2017-04-11 4 views
-2
an_letters = "aefhilmnorsxAEFHILMNORSX" 
word = input("I will cheer for you! enter a word:") 
times = int(input("Enthusiasm level (1-10):")) 
i = 0 
while i < len(word): 
    char = word[i] 
    if char in an_letters: 
     print("Give ma an " + char + "! " + char) 
    else: 
     print("Give ma a " + char + "! " + char) 
    i += 1 
print("What does that spell?") 
for i in range(times): 
    print(word, "!!!!") 

char = word[i]が何をしているのか分かりません。 Afafにはcharの型はありません。ただstrこれは単なる変数で、変数wordのインデックスを作成すると仮定します。しかし、私はiが何を指しているのか理解していませんか?位置を示すために数字を使うべきではありませんか?リテラルを使ったPythonと文字列スライシング?

答えて

1

位置を示す数字は使用しないでください。

um ... i = 0 ...数字です!そして、ここでスライスしていません。インデックス作成です文字列はリストのように反復可能です

ループはPythonicではありませんが、iは実際にはループ内で使用されることはありません。 word="hello"word[1]="h"word[2]="e"場合は、あなたがそれを他の名前を与え、

for char in word: 
    if char in an_letters: 
1

Charは単なる変数であることを書き換える可能性が...その後charは、サブ文字列の文字は、例えば各反復のためにwordに含まかかります。..

[i]は、インデックス、位置はword

関連する問題