ホームページ > バックエンド開発 > Python チュートリアル > Python コレクションの概念は何ですか? Python コレクションの概要

Python コレクションの概念は何ですか? Python コレクションの概要

不言
リリース: 2018-10-09 16:08:58
転載
4113 人が閲覧しました

この記事では、Python コレクションの概念について説明します。 Python コレクションの紹介は一定の参考価値がありますので、困っている友人が参考にしていただければ幸いです。

コレクションの説明

コレクションは、順序付けされていない、重複しないデータ コレクションです。コレクション自体は変更可能ですが、内部の要素は不変です。タイプ (ここで、リストを含むタプルであっても許可されていないことに注意してください。完全に不変の型である必要があります)

コレクションの作成

中括弧を使用してコレクションを作成できます。コレクション {} は作成に使用され、要素はカンマで区切られますが、{} は空の辞書を作成するため、空のコレクションの作成には使用できません。

如 set1 = {1,2,3}
ログイン後にコピー

set() 関数を使用してコレクションを作成することもできます。この場合、要素は不変型である必要があり、パラメータは反復可能なオブジェクト (文字列、リスト、タプル、イテレータなど) です。 。

i = 'abcdefg'
a =set(i)
print(type(a))
print(a)
----------
<class &#39;set&#39;>
{'b', 'a', 'f', 'd', 'g', 'e', 'c'}
ログイン後にコピー

Add add update

add(elem)
要素がすでに存在する場合、コレクションに新しい要素を追加できます。変更は行われません。

s1 = {1,2,3}
s1.add('qwe')
print(s1)
----------
{1, 2, 3, 'qwe'}
ログイン後にコピー

update(*others)
他の反復可能なオブジェクト (文字列、リスト、タプルなど) をコレクションに追加し、重複した要素を自動的に削除できます。

s1 = {1,2,3}
it = [3,4,5]
s1.update(it)
print(s1)
----------
{1, 2, 3, 4, 5}
ログイン後にコピー

削除remove(elem)discard(elem)pop()clear()

remove(elem)
要素を削除しますコレクション 要素が存在しない場合、エラーが報告されます。

s1 = {1,2,3}
s1.remove(2)
print(s1)
----------
{1, 3}
ログイン後にコピー

discard(elem)
remove と同様に、コレクションから要素を削除できます。違いは、要素が存在しない場合にエラーが報告されないことです。

s1 = {1,2,3}
s1.discard(6)
print(s1)
----------
{1, 2, 3}
ログイン後にコピー

pop()
セットから要素をランダムに削除し、その要素を返します。セットが空の場合、エラーが報告されます

s1 = {1,2,3}
a = s1.pop()
print(s1)
print(a)
----------
{2, 3}
1
ログイン後にコピー

clear ()
はコレクションをクリアするために使用されます。

いくつかの操作方法

集合にはいくつかの操作方法があります:交差、和集合、差集合、逆交差、サブセット、スーパーセット
以下ではコードを使用します各メソッドの使用法を詳しく説明します

s1 = {1,2,3,4,5}
s2 = {3,4,5,6,7}
print('交集:',s1 & s2) #可用&或者intersection,输出一个新的集合,包含共同拥有的元素
print('交集:',s1.intersection(s2))
print('并集:',s1 | s2) #可用|或者union,输出一个新的集合,包含两个集合中所有的元素(去重)
print('并集:',s1.union(s2))
print('差集:',s1 - s2) #可用 - 或者difference,输出一个新的集合,包含前一个集合中除去共有的元素
print('差集:',s1.difference(s2))
print('反交集:',s1 ^ s2) #可用^或者 symmetric_difference,输出一个新的集合,包含两个集合中除去共有的元素后剩余的所有元素
print('反交集:',s1.symmetric_difference(s2))
ログイン後にコピー
    交集: {3, 4, 5}
    交集: {3, 4, 5}
    并集: {1, 2, 3, 4, 5, 6, 7}
    并集: {1, 2, 3, 4, 5, 6, 7}
    差集: {1, 2}
    差集: {1, 2}
    反交集: {1, 2, 6, 7}
    反交集: {1, 2, 6, 7}
ログイン後にコピー

サブセットとスーパーセット。簡単に言えば、あるセットの要素には別のセットのすべての要素が含まれます。「大きい」セットはスーパーセットと呼ばれ、「小さい」セットはスーパーセットと呼ばれます。 subset

s1 = {1,2,3}
s2 = {1,2,3,4,5}
print(s1.issubset(s2)) #输出为True,s1是s2的子集
print(s2.issuperset(s1))#输出为True,s2是s1的超集
----------
    True
    True
ログイン後にコピー

さらに、frozenset('set name') を使用すると、セットを不変セットに変えることができます

以上がPython コレクションの概念は何ですか? Python コレクションの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート