【发布时间】:2018-08-31 00:00:35
【问题描述】:
我无法弄清楚为什么我的代码在包含 Docstring 时会失败,特别是在函数 select_level(): 上
但是,如果我删除 Docstring 并注释掉它,它可以正常工作
如果我包含 Docstring,我会在终端上收到以下错误:
(NameError: name 'select_level' is not defined)
def select_level():
"""Defines how a player selects a difficulty, selects questions
and answers depending on user input,outputs selections.
"""
print ("Ready Player One! Select a level.")
level_name = raw_input("Type in easy, medium or hard\n").lower()
if level_name=="easy":
level(easy_level, blanks, easy_answers)
elif level_name=="medium":
level(medium_level, blanks, medium_answers)
elif level_name=="hard":
level(hard_level, blanks, hard_answers)
else:
print ("Please select easy, medium or hard")
print select_level()
【问题讨论】:
-
这不是文档字符串,而是缩进
-
这对我来说很好。确保您没有在缩进中混合制表符和空格。
-
PM 2Ring 感谢您的建议,我回去并确保重写我的代码并确保我只使用选项卡,它现在正在工作,再次感谢!
-
@user10108802 备案;建议使用(通常 4 个)空格来缩进 Python 代码。您可以将大多数编辑器配置为将
Tab键的一次击键转换为四个空格。