对不起,我仍然是一个新手。试图学习python! 我的代码 -传递包含字符串的列表时出错
def fizz_count(x):
count=0
for item in x:
if x[item]=="fizz":
count=count+1
return count
给我一个错误,当我试图通过fizz_count(['fizz', 'buzz'])
-
列表索引必须是整数,而不是str的
对不起,我仍然是一个新手。试图学习python! 我的代码 -传递包含字符串的列表时出错
def fizz_count(x):
count=0
for item in x:
if x[item]=="fizz":
count=count+1
return count
给我一个错误,当我试图通过fizz_count(['fizz', 'buzz'])
-
列表索引必须是整数,而不是str的
def fizz_count(x):
count=0
for item in range(len(x)):
if x[item]=="fizz":
count=count+1
return count
或
def fizz_count(x):
count=0
for item in x:
if item=="fizz":
count=count+1
return count
RightOne(tm)的第二个版本 - 第一个版本可以工作,但没有问题,效率低下,只能接受可下载的容器,而第二个版本适用于任何迭代。 –
我希望在第一次学习时,我会花更多时间去了解标准库!
import collections
word_count = collections.Counter(['fizz', 'buzz'])
print(word_count['fizz'])
只要改变'if if [item] ==“fizz”'如果item ==“fizz”' – fredtantini
什么是fred说的; 'item'是'x'的每个元素,而不是每个索引;为了将来的参考,你可以使用'return x.count(“fizz”)' –