2017-03-05 125 views
0

我不認爲標題完全解釋了它。將尾部字符添加到單詞末尾的第一個元音中

基本上我有一個列表包含所有的元音和另一個列表中包含構成這個詞的字符。

我需要拿出包含這個單詞的列表,並把所有的字符都帶到的第一個元音,並將它們按順序添加到最後。

我不能繞到我的頭是如何做到這一點,我有兩個想法:

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

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

,另一個是基本相同的,但每次看到一次,它是不是一個元音它彈出它。我最初沒有看到的一個明顯問題是,'元音'不僅僅是一個單一的實體,字符不等於a,pop,字符不等於e,pop等等。或者在vCount,它只是遠遠長於wList的實際長度。

任何人都有想法如何解決這個問題?

編輯:對不起,這wasnt明確:

貓 - > ATC

熊 - > EARB

+0

能否請您編輯一些樣品的輸入和輸出到您的多一點透明度的問題? – miradulo

+0

如果(!'('a','e','i','o','u'))''中的字符怎麼樣? [看到這個問題](http://stackoverflow.com/questions/20226110/detecting-vowels-vs-consonants-in-python)。 –

+0

如果元音是一個列表,那麼'character!= vowel'將一個字符與一個列表進行比較,這永遠不會是真的。另外,當從'wList'彈出時*從'wList'中刪除*這個字符可能不是你想要的。嘗試將第2行更改爲「if(character not in vowel)」,而不是第二個循環,將其更改爲'wList = word + word [:vCount]'。只要字至少有一個元音,這將起作用。如果不是,則需要額外處理。 – 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:owledgekn

相關問題