2017-02-22 9 views
-3

私はPig Latinプログラムを構築しています。 )私の宿題のための要件は、私は無限ループを必要と言うしかしfor loop in pigラテン

vowel = ['a','e','i','o','u'] 

: まず、私は、リスト内の母音を定義する必要があります。 'exit'と入力すると、プログラムは停止します。

だから、どのように私はループのためにこれを使用してください:

また、私はとき(for x in VOWELSがヒント)変換部にリストを使用する必要がありますか?

私はifステートメントを使用すると問題なく動作します。

while text!=('exit'): 
    ltext = text.lower() 
    first_letter = word[0] 
    if first_letter in vowel: 
     new_word=ltext+'ay' 
    else: 
     new_word=ltext[1:]+first_letter+'ay' 
    print(new_word) 

しかし、forループの使用方法はわかりません。だからfirst_letter in vowelを比較するためにforループを使用するにはどうすればよいですか?

+0

が誤って削除おっとを打ちます。文字列を単なる文字のリストとして扱います。 forループでそれを使用してください。それはあなたに私たちがあなたの宿題をすることなく、正しい方向へのプッシュを与えるはずです – jarcobi889

+0

これは典型的なブタのラテン語ではありません。一般的には、最初の母音の前にある文字を削除し、単語の最後に付けて "ay"を追加しますが、それはあなたがやっていることではありません。明確化してください。 – Prune

+0

** for **ループの必要性を明確にしてください。あなたが私たちに示したことについては、** for **ループは愚かなことでしょう:** in **演算子を使用するのは間違いありません。「コンベンション部」とはどういう意味ですか?これは典型的なプログラミングの概念ではありません。 – Prune

答えて

1

を変更するには、を無限ループにループすると、おそらく次のようになりますか?両方の反復と仕事でちょうど同様に、リスト上のように文字列が

while True: 
    text = input("Enter something") 
    if text == "exit": 
     break 

注:

vowel = "aeiou" 
... 
if first_letter in vowel: 
    ... 

私はこれに関する情報を更新しますがループのためにあなたは必要性を説明したときにすることをより明確に。

2

forループを使用してfirst_letterの母音を比較するにはどうすればよいですか?

forループは、シーケンスを繰り返し処理するために使用されます。たとえば、一連の文字です。ですから、単語を繰り返し処理したい場合は、このようなことをすることができます。

word = "stackoverflow" 
for charcter in word: 
    print(charcter) 

文のすべての単語を繰り返し処理する場合は、このようなことができます。

sentence.split() - 文章を空白に基づいて分割します。


Pig Latinについては、このようなものが必要だと思います。

vowel = ['a','e','i','o','u'] 
while True: # infinite loop 
    text = input("Give your input text: ") 
    if text == "exit": 
     break # stops the loop 
    else: 
     if text[0].lower() in vowel: 
      text = text + 'ay' 
     else: 
      if text[0].isupper(): 
       text = text[1].upper() + text[2:] + text[0].lower() + 'ay' 
      else: 
       text = text[1:] + text[0] + 'ay' 
     print(text) 

サンプルI/O:

Give your input text: pig 
igpay 
Give your input text: Latin 
Atinlay 
Give your input text: exit 
+0

@ user7607794私の答えはあなたを助けましたか?はいの場合は、答えとして受け入れることができます! –