Pythonでsetでリスト(list)重複要素を除去
3538 ワード
Pythonのsetタイプは他の言語と似ており、関係テストと重複要素の除去を含む無秩序な重複要素セットです.
いくつかのデータを処理するには、リストa=[5,2,5,1,4,3,4]のような重複要素を除去する必要があります.
Pythonではset集合オブジェクトはunion(連合[|])、intersection(交差[&])、difference(差[-])、sysmmetric difference(対称差^)などの数学演算もサポートしている.次のようになります.
もちろん、Pythonにはsetに関する操作タイプがたくさんありますが、ここでは一つ一つ挙げません.テキストに重複する要素がある場合は、次のように削除します.
Pythonはsetを利用して重複要素を除去する方式で、以下の通りである.
いくつかのデータを処理するには、リストa=[5,2,5,1,4,3,4]のような重複要素を除去する必要があります.
- a = [5, 2, 5, 1, 4, 3, 4]
- print list(set(a))
Pythonではset集合オブジェクトはunion(連合[|])、intersection(交差[&])、difference(差[-])、sysmmetric difference(対称差^)などの数学演算もサポートしている.次のようになります.
- a = set('abracadabra')
- b = set('alacazam')
-
- # a b
- print a & b
- print a.intersection(b)
- # a b
- print a | b
- print a.union(b)
- # a b
- print a - b
- print a.difference(b)
- # a b b a
- print a ^ b
- print a.symmetric_difference(b)
もちろん、Pythonにはsetに関する操作タイプがたくさんありますが、ここでは一つ一つ挙げません.テキストに重複する要素がある場合は、次のように削除します.
- [root@linuxidc ]# cat done.txt
- linuxidc
- linuxidc
- linuxidc
-
- http://www.linuxidc.com/
- http://www.linuxidc.com/
Pythonはsetを利用して重複要素を除去する方式で、以下の通りである.
- In [1]: print '
'.join(set(open('done.txt').read().split('
')))
-
- linuxidc
- http://www.linuxidc.com/
-
- In [2]: print ''.join(set([x for x in open('done.txt').readlines() if x.strip()!='']))
- linuxidc
- http:///www.linuxidc.com/