2017-03-05 8 views
0

見出しが十分に説明されていないと思います。母音の最初の最初の出現までの末尾の文字を単語の末尾に追加します

基本的に私はすべての母音と単語を構成する文字を含む別のリストを含むリストを持っています。

単語を含むリストを取り、すべての文字をの最初の母音まで順番に追加する必要があります。私の周り私の頭をラップすることはできませんどのような

はそれを行う方法で、私は2つのアイデアを持っていた:

for characters in word: 
    if(character != vowel): 
     vCount += 1 
    else: 
     break 
    break 

for i in range(vCount): 
    print(i) 
    wList.append(wList.pop(i)) 

と基本的に同じであったが、それは見たたびに、それは母音それはなかったことを別のそれをpop'd。私が最初に見たことのない明らかな問題は、「母音」は単なる実体ではなく、文字はa、pop、文字がe、popなどと等しくないことです。 vCount、それはちょうどwListの実際の長さよりはるかに長くなりました。

誰でもこれを解決する方法について考えていますか?

編集:申し訳ありませんが、明確にその波平:

猫 - > ATC

クマ - > earb

+0

owledgeknあなたは、もう少し明確にするため、あなたの質問にいくつかのサンプルの入力と出力を編集してくださいもらえますか? – miradulo

+0

if( 'a'、 'e'、 'i'、 'o'、 'u')) 'のif(? [この質問を参照](http://stackoverflow.com/questions/20226110/detecting-vowels-vs-consonants-in-python) –

+0

母音がリストの場合、 'character!= vowel'は文字をリストと比較し、これは決して真実ではありません。また、 'wList' *からポップすると' wList'の文字が削除されますが、これはおそらくあなたが望むものではありません。 2行目を 'if(母音にない文字)'に変更し、2回目のforループの代わりに 'wList = word + word [:vCount]'に変更してみてください。これは、単語が少なくとも1つの母音を持つ限り動作します。そうでない場合は、さらに処理する必要があります。 – user650654

答えて

0

私はコードは自明であると思います:

vowel = 'aeiou' 
my_word = 'education' 
vowel_list = vowel.split() 
my_word_list = my_word.split() 
for index, character in enumerate(my_word): 
    # Loop through the items in your my_word_list 
    if character in vowel_list: 
     print my_word_list[index:] + my_word_list[:index] 

入力1:教育

出力1:教育

入力2:知識

出力2:

関連する問題