python TypeError:/:';内置函数或方法';和';int'; 我正在编写一个非常简单的Python代码来计算列表中有多少个单词,中间有一个字母。< /P> def middleLetterCounter(wordList, letter): letter = letter.lower() count = 0 for words in wordList: words = words.lower() if (len(words)%2==1 and words[int(len/2)]==letter): count += 1 if (len(words)%2==0 and (words[int(len/2-1)]==letter or words[int(len/2)]==letter)): count += 1 return count

python TypeError:/:';内置函数或方法';和';int'; 我正在编写一个非常简单的Python代码来计算列表中有多少个单词,中间有一个字母。< /P> def middleLetterCounter(wordList, letter): letter = letter.lower() count = 0 for words in wordList: words = words.lower() if (len(words)%2==1 and words[int(len/2)]==letter): count += 1 if (len(words)%2==0 and (words[int(len/2-1)]==letter or words[int(len/2)]==letter)): count += 1 return count,python,typeerror,Python,Typeerror,为了避免混淆,我选择先将每个单词转换成小写。 我有一个错误 if (len(words)%2==1 and words[int(len/2)]==letter): 错误是: TypeError: unsupported operand type(s) for /: 'builtin_function_or_method' and 'int' 这让我很困惑。显然len(words)%2是一个int,怎么可能是建筑功能呢?我认为这是括号的问题,但不是。当你应该使用len(单词)时,你使用len。

为了避免混淆,我选择先将每个单词转换成小写。 我有一个错误

if (len(words)%2==1 and words[int(len/2)]==letter):
错误是:

TypeError: unsupported operand type(s) for /: 'builtin_function_or_method' and 'int'

这让我很困惑。显然
len(words)%2
是一个int,怎么可能是建筑功能呢?我认为这是括号的问题,但不是。

当你应该使用
len(单词)
时,你使用
len
。此外,您可以使用
/
进行整数除法,而不是
int()
。另外,将其存储到变量中以避免重复:

def middlettercounter(字表,字母):
字母=字母。下()
计数=0
对于单词列表中的单词:
words=words.lower()
单词len=len(单词)
如果单词%2==1,单词[wordlen//2]==字母:
计数+=1
elif wordlen%2==0和(单词[wordlen//2-1]==字母或单词[wordlen//2]==字母):
计数+=1
返回计数
len
是一个(内置)功能。您可能想在
单词中调用它:

if(len(words)%2==1和words[int(len(words)/2)]==字母:
#这里---------------------------^

这里发生了很多事情。请做一个最小的可重复的例子