[問題] 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