求两个集合的差集代码_求求你了,不要再写循环求两个列表的交集,并集和差集了 | pythonic 小技巧...
生活随笔
收集整理的這篇文章主要介紹了
求两个集合的差集代码_求求你了,不要再写循环求两个列表的交集,并集和差集了 | pythonic 小技巧...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在 Python 中,求兩個列表的交集,并集和差集是經常會遇到的需求,而且也比較簡單。
最容易想到的就是寫循環,對兩個列表分別進行循環,然后判斷元素是否在另一個列表中,求得最終結果。
但這種方法比較 low,沒啥技術含量。身為一名 Python 程序員,一定要寫夠 pythonic 的代碼。
廢話不多說,直接看代碼。
# list_operate.pydef main():list_a = [1, 2, 3, 4, 5]list_b = [4, 5, 6, 7, 8]# 求交集的兩種方式res_a = [i for i in list_a if i in list_b]res_b = list(set(list_a).intersection(set(list_b)))print(f"res_a is: {res_a}")print(f"res_b is: {res_b}")# 求并集res_c = list(set(list_a).union(set(list_b)))print(f"res_c is: {res_c}")# 求差集的兩種方式,在B中但不在A中res_d = [i for i in list_b if i not in list_a]res_e = list(set(list_b).difference(set(list_a)))print(f"res_d is: {res_d}")print(f"res_e is: {res_e}")if __name__ == '__main__':main()來看一下輸出:
# python3 list_operate.py res_a is: [4, 5] res_b is: [4, 5] res_c is: [1, 2, 3, 4, 5, 6, 7, 8] res_d is: [6, 7, 8] res_e is: [8, 6, 7]結果還是沒問題的,別一頓操作猛如虎,結果是錯的,那就尷尬了。
總結一下,基本上就是兩種思路:
以上。
關注公眾號 AlwaysBeta,學習更多 pythonic 小技巧。
總結
以上是生活随笔為你收集整理的求两个集合的差集代码_求求你了,不要再写循环求两个列表的交集,并集和差集了 | pythonic 小技巧...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql的字符集编码_MySQL的字符
- 下一篇: mysql用if判断关联的表_mysql