我试图计算字母C出现在列表中的次数。当我使用时:
count = data[data.count('C')]
print ("There are", count, "molecules in the file")
运行代码时,它返回There are . molecules in the file
如果我在程序运行后输入data.count('C'),它将返回正确的值(43)。我无法弄清楚我做错了什么。
答案 0 :(得分:2)
这行可能与它有关吗,也许吧? ;)
count = data[data.count('C')] # This gives you the value at index data.count('C') of data
您后来提到的实际计数是:
count = data.count('C')
答案 1 :(得分:2)
尝试用第1行代替:
count = data.count('C')
答案 2 :(得分:1)
修改第一行:
count = data.count('C')
问题是您正在打印列表数据的第n个元素(其中n = count)而不是计数本身。
作为旁注,这是打印结果的更好方法:
print "There are {0} molecules in the file".format(count)
答案 3 :(得分:1)
您正在使用data
两次....
count = data[data.count('C')]
应该是
count =data.count('C')
这会打印
There are 43 molecules in the file
答案 4 :(得分:1)
好消息是,您从该方法中获得了正确的值。
坏消息是你没有错误地使用它。
您将结果用作字符串的索引,然后从字符串中生成一个字符。停止这样做。