python中的函数属性错误
以下是所讨论的功能:python中的函数属性错误,python,Python,以下是所讨论的功能: def single_letter_guess(guess,word): global guessed_letters global lives_remaining if word.find(guess) == -1: guessesLeft -= 0 guessed_letters = guessed_letters + guess.lower() if all_letters_guessed(word):
def single_letter_guess(guess,word):
global guessed_letters
global lives_remaining
if word.find(guess) == -1:
guessesLeft -= 0
guessed_letters = guessed_letters + guess.lower()
if all_letters_guessed(word):
return True
return False
错误来自第四行,显示:
if word.find(guess) == -1:
AttributeError: 'function' object has no attribute 'find'
我对python还是相当陌生,不知道如何解释这个错误消息。从技术上讲,它应该在字符串中查找猜测的字母。如果需要更多的上下文,我可以提供完整的代码 函数中的
word
是一个传入的函数,因此word.find(guess)
会导致错误<如果要使用find
我认为您可能在设置word=some_函数的某个地方缺少parens,因此您将word设置为函数,而不是返回值:
In [10]: def foo():
....: return "foo"
....:
In [11]: word = foo # no parens
In [12]: print(word.find("f"))
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-12-9db996b190ed> in <module>()
----> 1 print(word.find("f"))
AttributeError: 'function' object has no attribute 'find'
In [13]: word = foo()
In [14]: print(word.find("f"))
0
[10]中的:def foo():
..:返回“foo”
....:
在[11]中:word=foo#no parens
在[12]中:打印(word.find(“f”))
---------------------------------------------------------------------------
AttributeError回溯(最近一次呼叫上次)
在()
---->1份打印件(word.find(“f”))
AttributeError:“函数”对象没有属性“查找”
在[13]中:word=foo()
在[14]中:打印(word.find(“f”))
0
word
似乎是一个函数。你怎么调用这个函数?就是这样。我忘记了前面定义单词的函数中的paren。非常感谢。