たとえば、特定の単語(ieやeiのような連続した母音ではない)に母音を含むテキストを追加しようとしています。
単語:「奇妙な」
母音の前に追加するテキスト:'ib'
結果:'wibeird'
したがって、テキスト「ib」が母音「e」の前に追加されました。母音が連続しているときにテキストを追加したくないので、「i」を「ib」に置き換えなかったことに注意してください。
しかし、私がこれを行うとき:
単語:「犬」
母音の前に追加するテキスト:'ob'
結果:'doboog'
正しい結果は次のようになります:'dobog'
プログラムをデバッグしようとしていますが、「wibeird」と「dobog」が正しく出力されることを確認するためのロジックを理解できないようです。
これが私のコードです。最初に「weird」で実行した後、first_sylを「ob」に、wordを「dog」に置き換えます。
first_syl = 'ib'
word = 'weird'
vowels = "aeiouAEIOU"
diction = "bcdfghjklmnpqrstvwxyz"
empty_str = ""
word_str = ""
ch_str = ""
first_vowel_count = True
for ch in word:
if ch in diction:
word_str += ch
if ch in vowels and first_vowel_count == True:
empty_str += word_str + first_syl + ch
word_str = ""
first_vowel_count = False
if ch in vowels and first_vowel_count == False:
ch_str = ch
if word[-1] not in vowels:
final_str = empty_str + ch_str + word_str
print (final_str)
Python3.2.3を使用しています。また、インポートされたモジュールを使用したくないので、Pythonの文字列とループの基本を理解するためにこれを実行しようとしています。