1 #!は/ usr / binに/ PythonのENV
2 #__author:HLC
。3 #DATE:2019年6月1日
4。
5。 #SET設定
6 #互いに異なる要素のセットを形成するように設定、Pythonの型ファンデーションセット
7 #組成物をコレクションのメンバーを反復することができない
。8 #1 A = [1,2,3,4,5,1,2,3,4,5、 "A"、 "A"、 "A"、 "B"、 "B"、「 B "" C「]
。9 #B =セット(A)#キーはセットのセットによって定義される
10 #の印刷(A)#1 [1、2 ,. 3 ,. 4 ,. 5 ,. 1,2 ,. 3 ,. 4 ,. 5、 'A'、 'A'、 'A'、 'B'、 'BB'、 'C']
。11 #プリント(B)#{1,2 ,. 3 ,. 4 ,. 5、 'A'、 'BB'、 'C'、 'B'}
12は、
13であり、 #は無秩序配列オブジェクト値のコレクションをハッシュすることができる:セット・メンバは、辞書のキーを行うことができる
14 位= [[ "ASDF"、 1244]、1,2,3,4,5,1,2,3,4,5、 "A"、 "A"、 "A"、 "B"、 "B" "B"、 "C"]
15 #1 B =セット(A)#1はTypeError:非ハッシュタイプ: 'リスト'
16 #印刷(B)
17
18である #1 分類:設定された変数、不変のセット
19 #変数セット、他の要素として設定することができない、不変の反対側のセット、追加要素を削除、非ハッシュ、辞書キーを使用することができない
20は、 #1 [1,2,3] A =
21である #1 B =セット(A )#1はTypeError:非ハッシュタイプ:「セット」
22である 。#C = {B:「SDF」}
23である
24 位のセット作成
25 位独自の構文のないコレクションが存在しないので、この方法は、工場出荷時の設定(によって設定することができる)とのfrozenset( )作成した
26 #」(S1 = SETをASFD ")
27 #S2 =のfrozenset(" DSG」)
28 #プリント(S1、タイプ(S1))#{ 'F'、 'D'、 'A'、 'S'} <クラスSET」>
29 #印刷(S2、タイプ(S2)#1のfrozenset({[ D「」G「」S '})<クラスのfrozensetの'>
30
31は、 #1 アクセス設定
32 位自体が乱れコレクションので、そうインデックスを作成することができない、またはスライスオペレーションのセットとして、またはだけをループに使用します。、コレクション要素を判断しないアクセスまたは
33である 。#S1 =セット( "asdfsd")が
34れる #1 プリント(S1で"A")#は、真の
35の #1 S1 [0]#の例外TypeErrorは: 'セット'オブジェクトは、添字化されていない
36
37 [ #S1で私のために:
38 # プリント(I)
39 #のD
40 #S
41 #
42である 。#F
43である
44ことである #の更新は、次のメソッド使用して構築することができ、コレクション:
45 #S1 = SET( "ASDF")
46である #1 (s1.add)
47 #1 s1.update()
48 #1 s1.remove()
49 位更新するための唯一の変数セット
50 #S1 = frozensetの( "gdsfg")
51である #1 #1 s1.add()#1はAttributeError: 'frozensetの'オブジェクト属性がNO '追加'は
52であるが
53である #S2 =セット( "SDF")
54であり 位s2.add#( "MMN"){# 'F'、 'MMN'、 'D'、 'S'}
55 #s2.update( "JKL"){# 'D'、 'L'、'S'、 'K'、 'J'、 'F'}
56 #プリント(S2)が
57である
58 #S1 = SETは、([ "ASDF"、325、 "456"])
59 ##1 s1.remove(325)#{ '456'、 'ASDF'}
60 #s1.pop()# { 'ASDF'、325}
61は、 #1 s1.clear()#セット()
62である 。#名'S1'定義されていない:デルNameError#S1
63である #1 プリント(S1)
64
65 #コレクション型オペレータ
66 #にないで
67 #コレクションが等価ではないと同等です(== ,! =)
68 #のスーパーセットのサブセット
69 #の真#印刷(セット( "ASD")==セット( "asdasd"))
70 #1 S =セット( "adsfas")
71 #S1 = SET( "ADS")
72 #印刷(Sにおける"S")#真
73は、 #の印刷(S> S1)真の#
74
75 #実際のセットなどでまたはオペレーティングジョイント(連合)の操作|()共同価格は、連合()合成されたシンボルに均等な方法がある
76 #S1 = SET( "qewr")
77 #S2 = SET( "ghkj")
78 #S2 | S3 = S1
79 #プリント(S3){# 'E'、 'K'、 'R&LT'、 'H'、 'W'、 'G'、 'Q'、 'J'}
80 #プリント(s1.union(S2)){# 'E'、 ' K '' R&LT '' H '' W '' G '' Q '' J「}
81
82 A = SET([1,2,3,4、5 ])
83 B =セット([4,5,6,7,8 ])
84
85 #交差intersrction()はB&に相当する
86 #印刷(a.intersection(B))4 {#} 5。。
87 #と組合に等しく設定| B
88 #。印刷(a.union(B))1 {# 、2、3、4、5、6、7、8}
89 #差分Aに差分電流等価- B
90 #。印刷(a.difference(B)){#1、2、3}
91は、 #1 (B.プリント-difference(A)){#8 ,. 6}。7
92 #対称差(逆交差点)symmetric_difference相当^ B A
93 #プリント(a.symmetric_difference(B)){#1、2 ,. 3 ,. 6、 7、8}
94 #のスーパーセットスーパーセット
95 #の印刷(a.issuperset(B))#> Falseを
96 #のサブセット
97 #プリント(a.issubset(B))#<偽