[问题] count相关问题

楼主: klao ( 完。整)   2024-11-12 12:17:21
各位先进大家好!
写题目时遇到一个问题
题目大意是:
"一个list
(如s = [[0, 21],
[1, 23],
[1, 21],
[0, 23]])
如果某两项的s[i][1]一样,s[i][0]为一个0一个1,就可以配成一对;
若所有s内的item皆可两两配对,则回应True;不能则False"
看到许多人的解答是
def solution(s):
return all([s.count(i)==s.count([1-i[0],i[1]]) for i in s])
想请问的是
s.count([1-i[0],i[1]])
计算的count是什么?
如果要搜寻相关资料,google关键字要找什么?
先向大家谢过了!
作者: saxontai (黑暗,点缀孤零零的星)   2024-11-12 12:34:00
查官方文件即可 https://reurl.cc/ly3xMd
作者: mantour (朱子)   2024-11-13 00:54:00
i用s的item一个一个代进去不就知道是什么了比如 i=[0,21]时 判断式就是s.count([0,21])==s.count([1,21])也就是s里面的[0,21]的个数和[1,21]的个数是否相同
作者: lycantrope (阿宽)   2024-11-13 07:32:00
烂code就不要学了
作者: Yshuan (倚絃)   2024-11-14 09:58:00
是要挑战一行文吗? 不然这样写就是残害读者脑细胞
楼主: klao ( 完。整)   2024-11-14 15:40:00
感谢所有回复的版友!mantour大大让我知道我之前到底误会什么了!但是说实在很多一行code真的都要想一下到底在说什么
作者: mantour (朱子)   2024-11-15 23:24:00
all() 里面是一个 list comprehension 我想你可能是这边没看清楚
楼主: klao ( 完。整)   2024-11-17 12:37:00
没错!真的感谢大大的提点!

Links booklink

Contact Us: admin [ a t ] ucptt.com