我正在学习Python,但遇到了一个我似乎无法摆脱的语法错误。我正在创建一个函数,可以确定第一个和最后一个字母是否相等。对于第一个字母,我只是获取了字符串参数传递到的参数,我们将参数称为“word”,因此我通过输入 word[0] 来获取第一个字母,下面提供了完整代码。
对于最后一个字母,我使用 len() 获取字符串的完整长度,并将该数字减去 1 以考虑到 0 索引,然后将其存储在名为 last_letter 的变量中。然后我使用带有参数的变量,例如 word[last_letter]。
def same_first_and_last_letter(word):
last_letter = len(word) - 1
return word[0] == word[last_letter]
same_first_and_last_letter("runner")
但是,我从中得到了语法错误。以下是错误信息。
def same_first_and_last_letter(word):
... last_let = len(word) - 1
... return word[0] == word[last_let]
... same_first_and_last_letter("runner")
File "<stdin>", line 4
same_first_and_last_letter("runner")
^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: invalid syntax
我唯一的猜测是,当我通过索引号查找最后一个字母时,它不允许在该部分中使用变量。我需要一个整数还是我做错了什么?
当我运行该函数并提供参数“runner”时,它应该说 true。
您遇到的语法错误是因为函数调用 same_first_and_last_letter("runner") 之前有多余的点 (...)。在 Python 的交互模式 () 中,... 用于指示多行块的续行,但不应直接在脚本中键入它。
def same_first_and_last_letter(单词): 最后一个= len(字) - 1 返回单词[0] == 单词[last_let]
结果 = same_first_and_last_letter("跑步者") 打印(结果)