所以我在4/13超市的一天为那些熟悉的人。我想知道我是否应该创建自己的列表,或者是否要求我逐字地创建一个名为“x”的列表,但这里是方向,我不希望答案只是正确的方向上的一个点..谢谢大家!
编写一个函数,计算字符串“fizz”出现在列表中的次数。
编写一个名为fizz_count的函数,它将列表x作为输入。
创建变量计数以保持正在进行的计数。将其初始化为零。
对于x:中的每个项目,如果该项目等于字符串“fizz”,则递增计数变量。
循环之后,请返回计数变量。
例如,fizz_count(["fizz","cat","fizz"])
应返回2
。
到目前为止,这是我的代码:
def fizz_count():
count = 0
for in x:
if = 'fizz':
count = count +
return
网站正在改变我的格式,我的代码不是全部一行
答案 0 :(得分:1)
您的基本理解是正确的,您只是遇到了一些问题:
=
语句只有一个if
。使用double(==
)count = count +
,这会引发错误。请改用count+=1
return
缩进了。相反,将返回值放在与for
循环相同的缩进级别和return count
。for
循环做任何事情。而是将其从for in x
更改为for word in x
。fizz
。而不是if == 'fizz'
,请使用if word == 'fizz'
。def fizz_count(x)
。以下是您编辑的代码:
def fizz_count(x):
count = 0
for word in x:
if word == 'fizz':
count+=1
return count
运行如下:
>>> fizz_count(['fizz', 'foo', 'fizz', 'bar'])
2
>>> fizz_count(['glob', 'foo', 'roo', 'bar'])
0
>>> fizz_count(['glob', 'foo', 'fizz', 'fizz', 'fizz'])
3
>>>
答案 1 :(得分:0)
def fizz_count(my_list):
count = 0
for word in my_list:
if word == 'fizz':
count = count + 1
return count
或更简单
def fizz_count(my_list):
return my_list.count('fizz')
但与FIZZ'或者' FiZz' ?
if word.lower() == 'fizz':