if 函数的迭代器 return 错误
Iterator of if-functions return errors
我刚刚开始一个可以对消息进行编码的编码项目。尝试使用 if 和 elif 函数时,repl.it 返回错误,无论我尝试用什么结束 if 函数。
代码:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in list(range(len(StringList))
if StringList[x] == "a":
print("Letter found: a")
elif StringList[x] == "b"
print("Letter found: b")
elif StringList[x] == "c"
print("Letter found: c")
elif StringList[x] == "d"
print("Letter found: d")
elif StringList[x] == "e"
print("Letter found: e")
elif StringList[x] == "f"
print("Letter found: f")
x += 1
您有语法错误。 Python 的 for 循环定义为 for x in y:
。你忘了 :
。 ifs
或 elifs
或 elses
后也需要冒号
此外,您不必将 range()
转换为列表。 range()
in Python3 returns 一个生成器,您可以安全地对其进行迭代(在 Python2 中您必须使用 xrange
)。
此外,您不必递增 x
,因为它由 Python for
循环递增。
然后,不要使用类似 C 语言的循环。您不必对索引进行操作。最好编写更多 pythonic 代码,像其他语言一样使用 Pythons for 循环 foreach
:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in StringList:
if x == "a":
print("Letter found: a")
elif x == "b":
print("Letter found: b")
elif x == "c":
print("Letter found: c")
elif x == "d":
print("Letter found: d")
elif x == "e":
print("Letter found: e")
elif x == "f":
print("Letter found: f")
最后一个,如果你只关心a-f
个字母,好吧,你可以写这样的代码。但是最好检查一下字母是>= a
还是<= f
。但是如果你想检查整个字母表,最好这样写:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in StringList:
print(f"Letter found: {x}")
我刚刚开始一个可以对消息进行编码的编码项目。尝试使用 if 和 elif 函数时,repl.it 返回错误,无论我尝试用什么结束 if 函数。
代码:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in list(range(len(StringList))
if StringList[x] == "a":
print("Letter found: a")
elif StringList[x] == "b"
print("Letter found: b")
elif StringList[x] == "c"
print("Letter found: c")
elif StringList[x] == "d"
print("Letter found: d")
elif StringList[x] == "e"
print("Letter found: e")
elif StringList[x] == "f"
print("Letter found: f")
x += 1
您有语法错误。 Python 的 for 循环定义为 for x in y:
。你忘了 :
。 ifs
或 elifs
或 elses
此外,您不必将 range()
转换为列表。 range()
in Python3 returns 一个生成器,您可以安全地对其进行迭代(在 Python2 中您必须使用 xrange
)。
此外,您不必递增 x
,因为它由 Python for
循环递增。
然后,不要使用类似 C 语言的循环。您不必对索引进行操作。最好编写更多 pythonic 代码,像其他语言一样使用 Pythons for 循环 foreach
:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in StringList:
if x == "a":
print("Letter found: a")
elif x == "b":
print("Letter found: b")
elif x == "c":
print("Letter found: c")
elif x == "d":
print("Letter found: d")
elif x == "e":
print("Letter found: e")
elif x == "f":
print("Letter found: f")
最后一个,如果你只关心a-f
个字母,好吧,你可以写这样的代码。但是最好检查一下字母是>= a
还是<= f
。但是如果你想检查整个字母表,最好这样写:
ConvertString = input("Enter a string: ")
StringList = list(ConvertString)
print (StringList)
for x in StringList:
print(f"Letter found: {x}")