我是Python新手并尝试编写基本脚本 我正在尝试打印出字母表中的所有字母,并且我一直收到无效的语法。
letter = ord('a')
while letter != ord('z')
print(chr(letter))
letter = letter + 1
这是第一个错误日志:
while letter != ord('z')
^
SyntaxError: invalid syntax
似乎Python不喜欢关闭括号,所以当我删除它时,它给了我这个:
print(chr(letter))
^
SyntaxError: invalid syntax
我无法解决这个问题,所以我尝试完全删除该行。然后它给了我这个:
letter = letter + 1
^
SyntaxError: invalid syntax
我不知道我现在在做什么,只有在完全删除整个脚本之后,Python终于开心了。
如何修复脚本以使其不再有无效的语法?
答案 0 :(得分:3)
你想在while循环结束时使用冒号,让Python知道它是一个块。
while letter != ord('z'):
<rest of your code here>
此外,现在你似乎有while循环的开头缩进而没有其余的,当你想要相反的时候:在while循环中运行的所有代码都应该缩进,但是标题不应该是
作为旁注,您的ord
和chr
策略完全有效,但可能比必要的更复杂。在Python中,for循环可以迭代字符串以及一系列数字。所以你可以说
for character in "abcdefghijklmnopqrstuvwxyz":
print(character)
获取该字母字符串的更简单方法是
import string
string.lowercase
答案 1 :(得分:2)
在while
循环中缺少冒号。
letter = ord('a')
while letter != ord('z'):
print(chr(letter))
letter += 1