Python 统计列表中字符串的出现次数

Python 统计列表中字符串的出现次数,python,Python,我正试图解决托管在上的一个简单python问题,但在python中使用列表的count函数时遇到了困难。我尝试了多个测试用例,但我的count函数总是返回0 目标:计算连续平方等于天数的发生次数 这是列表类型的问题吗?有没有更简单的方法让我在一行中计算值,而不必检查值对,然后计算总和 import sys def solve(size, squares, day, month): check = [sum(squares[nums:nums+month]) == day for n

我正试图解决托管在上的一个简单python问题,但在python中使用列表的count函数时遇到了困难。我尝试了多个测试用例,但我的count函数总是返回0

  • 目标:计算连续平方等于天数的发生次数
这是列表类型的问题吗?有没有更简单的方法让我在一行中计算值,而不必检查值对,然后计算总和

import sys

def solve(size, squares, day, month):
    check = [sum(squares[nums:nums+month]) == day for nums in range(0,len(squares))]
    print (check)   #Test list output
    count = check.count('True')
    return count

#Test Cases 1
# size = 6
# squares = [1,1,1,1,1,1]
# day, month = (3,2)
#Output 0

#Test Cases 2
# size = 1
# squares = [4]
# day, month = (4,1)
#Output 1

#Test Cases 3
size = 5
squares = [1,2,1,3,2] 
day, month = [3,2]
#Output 2

#Custom User Input:
# size = int(input().strip())
# squares = list(map(int, input().strip().split(' ')))
# day, month = input().strip().split(' ')
# day, month = [int(day), int(month)]
result = solve(size, squares, day, month)
print(result)
此代码正在计算字符串的出现次数
'True'

它应该是:

check.count(True)
您也可以简单地使用:

sum(check)
此代码正在计算字符串的出现次数
'True'

它应该是:

check.count(True)
您也可以简单地使用:

sum(check)

啊,正确的语法又出现了。是因为列表中的值是布尔类型的,所以列表无法正确计算值的原因吗?
True!='True'
=
返回列表中的
bool
值。正确的语法再次出现。是因为列表中的值是布尔类型的,所以列表无法正确计算值的原因吗?
True!='True'
=
返回列表中的
bool
值。您可以使用
True
被视为1而
False
被视为0的事实,因此您只需执行
count=sum(平方[nums:nums+month])==范围内nums的天数(0,len(平方));返回计数
谢谢您的帮助!我对python编程有点陌生,所以选择快捷方式对我的学习非常有帮助。你可以使用这样一个事实,即
True
被视为1,
False
被视为0,因此你可以简单地做
count=sum(sum(平方[nums:nums+month])==范围内nums的天(0,len(平方));返回计数
谢谢您的帮助!我对python编程有点陌生,所以选择快捷方式对我的学习很有帮助。