真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

pythonset集合介紹-創(chuàng)新互聯(lián)

在python變量中除了以前文章所提到的整形int / 浮點數(shù)float / 布爾值bool / 列表list / 字典dict 之外,還有一個類型我們還沒有做詳細(xì)介紹,這個變量類型就是集合set。

創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)服務(wù)商,為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)服務(wù),網(wǎng)站設(shè)計,網(wǎng)站托管等一站式綜合服務(wù)型公司,專業(yè)打造企業(yè)形象網(wǎng)站,讓您在眾多競爭對手中脫穎而出創(chuàng)新互聯(lián)公司。

一.set集合簡介

python set集合使用大括號 { }表示,與字典dict不同的是set集合并沒有key/value鍵值對,主要有以下兩個特點:

1.元素不允許重復(fù)

2.set 不記錄元素的添加順序,即是無序的,和字典類似

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(個人博客地址): shuopython.com

@WeChat Official Account(微信公眾號):猿說python

@Github:www.github.com

@File:python_set.py

@Time:2019/11/09 21:25

@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!

"""

# 創(chuàng)建一個空集合set

set_a=set()

# 打印集合set

print(set_a)

# 查看類型

print(type(set_a))

print("***"*20)

# 創(chuàng)建一個集合

set_b={"猿說python",False}

print(type(set_b))

print(set_b)

print("***"*20)

# 創(chuàng)建一個字典

dict_b={"name":"猿說python","url":"www.shuopython.com"}

print(type(dict_b))

print(dict_b)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32


輸出結(jié)果:

set()

************************************************************

{False,'猿說python'}

************************************************************

{'name':'猿說python','url':'www.shuopython.com'}

1

2

3

4

5

6

7

8

代碼分析:觀察上面代碼,雖然字典dict 和 集合set 都是由{}構(gòu)成,注意字典由鍵值對key/value構(gòu)成,而集合確是由一個一個數(shù)據(jù)構(gòu)成,和列表的元素類似!

二.set集合常用函數(shù)

add() — 向 set 集合中添加元素;

remove() — 刪除元素,如果集合中不包含被刪除的元素,remove() 方法會報出 KeyError 異常;

discard() — 刪除元素,如果集合中不包含被刪除的元素,不會有任何提示或者 異常;

clear() — 就是清空白 set 集合;

copy() — 拷貝一個集合;

difference() — 返回多個集合的差集;

difference_update() — 移除集合中的元素,該元素在指定的集合也存在;

intersection() — 返回集合的交集,不改變集合本身,而是返回兩個集合的交集;

intersection_update() — 返回集合的交集,會通過交集運算改變第一個集合;

isdisjoint() — 判斷兩個集合是否包含相同的元素,如果沒有返回 True,否則返回 False;

issubset() — 判斷指定集合是否為該方法參數(shù)集合的子集;

issuperset() — 判斷該方法的參數(shù)集合是否為指定集合的子集;

pop() — 隨機移除元素;

symmetric_difference() — 移除當(dāng)前集合中在另外一個指定集合相同的元素,并將另外一個指定集合中不同的元素插入到當(dāng)前集合中;

union() — 返回兩個集合的并集;

update() — 用于修改當(dāng)前集合,可以添加新的元素或集合到當(dāng)前集合中,如果添加的元素在集合中已存在,則該元素只會出現(xiàn)一次,重復(fù)的會忽略;

# 使用花括號構(gòu)建set集合

c={'喬峰',"段譽","虛竹","天龍八部","射雕英雄傳"}

# 添加元素

c.add("天山姥姥")

c.add(6)

print("c集合的元素個數(shù)為:",len(c))

print(c)

# 刪除指定元素

c.remove("天山姥姥")

print(c)

print("c集合的元素個數(shù)為:",len(c))

print("***"*20)

# 判斷是否包含指定字符串

print("c集合是否包含'喬峰'字符串:",("喬峰"inc))# 輸出True

print("***"*20)

# 使用set()函數(shù)(構(gòu)造器)來創(chuàng)建set集合

movies=set()

movies.add("天龍八部")

movies.add("射雕英雄傳")

print("movies集合的元素:",movies)

# issubset()方法判斷是否為子集合

print("movies集合是否為c的子集合?",movies.issubset(c))# 輸出False

# issuperset()方法判斷是否為父集合

# issubset和issuperset其實就是倒過來判斷

print("c集合是否完全包含books集合?",c.issuperset(movies))# 輸出False

# 用c集合減去books集合里的元素,不改變c集合本身

result1=c-movies

print(result1)

# difference()方法也是對集合做減法,與用-執(zhí)行運算的效果完全一樣

result2=c.difference(movies)

print(result2)

# 用c集合減去books集合里的元素,改變c集合本身

c.difference_update(movies)

print("c集合的元素:",c)

# 刪除c集合里的所有元素

c.clear()

print("c集合的元素:",c)

print("***"*20)

# 直接創(chuàng)建包含元素的集合

d={"python面向?qū)ο?,'python基礎(chǔ)','python爬蟲'}

print("d集合的元素:",d)

# intersection()方法也是獲取兩個集合的交集,與用&執(zhí)行運算的效果完全一樣

inter2=d.intersection(movies)

print(inter2)

# 計算兩個集合的交集,改變d集合本身

d.intersection_update(movies)

print("d集合的元素:",d)

print("***"*20)

# 將range對象包裝成set集合

e=set(range(5))

f=set(range(3,7))

print("e集合的元素:",e)

print("f集合的元素:",f)

# 計算兩個集合的并集,不改變e集合本身

un=e.union(f)

print('e和f執(zhí)行并集的結(jié)果:',un)

# 計算兩個集合的并集,改變e集合本身

e.update(f)

print('e集合的元素:',e)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70


輸出:

c集合的元素個數(shù)為:7

{'天龍八部',6,'虛竹','喬峰','段譽','天山姥姥','射雕英雄傳'}

{'天龍八部',6,'虛竹','喬峰','段譽','射雕英雄傳'}

c集合的元素個數(shù)為:6

************************************************************

c集合是否包含'喬峰'字符串:True

************************************************************

movies集合的元素:{'天龍八部','射雕英雄傳'}

movies集合是否為c的子集合?True

c集合是否完全包含books集合?True

{'喬峰','段譽',6,'虛竹'}

{'喬峰','段譽',6,'虛竹'}

c集合的元素:{6,'虛竹','喬峰','段譽'}

c集合的元素:set()

************************************************************

d集合的元素:{'python爬蟲','python基礎(chǔ)','python面向?qū)ο?#39;}

set()

d集合的元素:set()

************************************************************

e集合的元素:{0,1,2,3,4}

f集合的元素:{3,4,5,6}

e和f執(zhí)行并集的結(jié)果:{0,1,2,3,4,5,6}

e集合的元素:{0,1,2,3,4,5,6}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23


 三.set集合運算符

<=:相當(dāng)于調(diào)用 issubset() 方法,判斷前面的 set 集合是否為后面的 set 集合的子集合。

>=:相當(dāng)于調(diào)用 issuperset() 方法,判斷前面的 set 集合是否為后面的 set 集合的父集合。

–:相當(dāng)于調(diào)用 difference() 方法,用前面的 set 集合減去后面的 set 集合的元素。

&:相當(dāng)于調(diào)用 intersection() 方法,用于獲取兩個 set 集舍的交集。

^:計算兩個集合異或的結(jié)果,就是用兩個集合的并集減去交集的元素。

# 使用花括號構(gòu)建set集合

c={'喬峰',"段譽","虛竹","天龍八部","射雕英雄傳"}

# 使用set()函數(shù)(構(gòu)造器)來創(chuàng)建set集合

movies=set()

movies.add("天龍八部")

movies.add("射雕英雄傳")

print("movies集合的元素:",movies)

# issubset()方法與<=運算符效果相同

print("movies集合是否為c的子集合?",(movies<=c))# 輸出False

print("***"*20)

e=set(range(5))

f=set(range(3,7))

print("e集合的元素:",e)

print("f集合的元素:",f)

# 對兩個集合執(zhí)行異或運算

xor=e^f

print('e和f執(zhí)行xor的結(jié)果:',xor)

# 直接創(chuàng)建包含元素的集合

d={"python面向?qū)ο?,'python基礎(chǔ)','python爬蟲'}

print("d集合的元素:",d)

# 計算兩個集合的交集,不改變d集合本身

inter1=d&movies

print(inter1)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

輸出結(jié)果:

movies集合的元素:{'天龍八部','射雕英雄傳'}

movies集合是否為c的子集合?True

************************************************************

e集合的元素:{0,1,2,3,4}

f集合的元素:{3,4,5,6}

e和f執(zhí)行xor的結(jié)果:{0,1,2,5,6}

d集合的元素:{'python基礎(chǔ)','python面向?qū)ο?#39;,'python爬蟲'}

set()

1

2

3

4

5

6

7

8

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


文章題目:pythonset集合介紹-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://weahome.cn/article/djsohj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部