阿里雲天池Python訓練營 學習day06

2021-10-09 10:21:46 字數 3165 閱讀 6212

python 中set與dict類似,也是一組key的集合,但不儲存value。由於key不能重複,所以,在set中,沒有重複的key。

注意,key為不可變型別,即可雜湊的值。

num =

print

(type

(num))#

num =

print

(type

(num)

)#

從結果發現集合的兩個特點:無序 (unordered) 和唯一 (unique)。

由於 set 儲存的是無序集合,所以我們不可以為集合建立索引或執行切片(slice)操作,也沒有鍵(keys)可用來獲取集合中元素的值,但是可以判斷乙個元素是否在集合中。

內建函式:

由於 set 是無序和無重複元素的集合,所以兩個或多個 set 可以做數學意義上的集合操作。

set

.intersection(set1, set2) 返回兩個集合的交集。

set1 & set2 返回兩個集合的交集。

set.intersection_update(set1, set2) 交集,在原始的集合上移除不重疊的元素。

set.union(set1, set2) 返回兩個集合的並集。

set1 | set2 返回兩個集合的並集。

在這裡插入**片
set

.difference(

set) 返回集合的差集。

set1 - set2 返回集合的差集。

set.difference_update(

set) 集合的差集,直接在原來的集合中移除元素,沒有返回值。

set

.symmetric_difference(

set)返回集合的異或。

set1 ^ set2 返回集合的異或。

set.symmetric_difference_update(

set)移除當前集合中在另外乙個指定集合相同的元素,並將另外乙個指定集合中不同的元素插入到當前集合中。

set

.issubset(

set)判斷集合是不是被其他集合包含,如果是則返回 true,否則返回 false。

set1 <= set2 判斷集合是不是被其他集合包含,如果是則返回 true,否則返回 false。

set

.isdisjoint(

set) 用於判斷兩個集合是不是不相交,如果是返回 true,否則返回 false。

5

. 不可變集合

python 提供了不能改變元素的集合的實現版本,即不能增加或刪除元素,型別名叫frozenset。需要注意的是frozenset仍然可以進行集合操作,只是不能用帶有update的方法。

frozenset

([iterable]

) 返回乙個凍結的集合,凍結後集合不能再新增或刪除任何元素。

max(sub)返回序列或者引數集合中的最大值

min(sub)返回序列或引數集合中的最小值

print

(max(1

,2,3

,4,5

))# 5print

(max([

-8,99

,3,7

,83])

)# 99

print

(max

('ilovelsgogroup'))

# v

sum(iterable[, start=0]) 返回序列iterable與可選引數start的總和

sorted

(iterable, key=

none

, reverse=

false

) 對所有可迭代的物件進行排序操作。

iterable -

- 可迭代物件。

key -

- 主要是用來進行比較的元素,只有乙個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的乙個元素來進行排序。

reverse -

- 排序規則,reverse =

true 降序 , reverse =

false 公升序(預設)。

返回重新排序的列表。

reversed

(seq) 函式返回乙個反轉的迭代器。

seq -

- 要轉換的序列,可以是 tuple

, string,

list 或 range。

enumerate

(sequence,

[start=0]

)

zip(iter1 [,iter2 […]])

用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的物件,這樣做的好處是節約了不少的記憶體。

我們可以使用 list() 轉換來輸出列表。

如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 * 號操作符,可以將元組解壓為列表。

a =[1

,2,3

]b =[4

,5,6

]c =[4

,5,6

,7,8

]zipped =

zip(a, b)

print

(zipped)

# print

(list

(zipped)

)# [(1, 4), (2, 5), (3, 6)]

zipped =

zip(a, c)

print

(list

(zipped)

)# [(1, 4), (2, 5), (3, 6)]

a1, a2 =

zip(

*zip

(a, b)

)print

(list

(a1)

)# [1, 2, 3]

print

(list

(a2)

)# [4, 5, 6]

阿里雲天池Python訓練營

字串 引號之間的字元集合 單引號或雙引號 反斜槓符號 單引號 雙引號 n換行 t橫向製表符 tab r回車 原始字串 所有的字串都是直接按照字面的意思來使用 不轉義特殊或不能列印的字元 在字串前邊加乙個英文本母 r 三引號允許字串跨多行 可包含換行符 製表符以及其他特殊字元 具有不可修改性 通過元素...

阿里雲天池python訓練營

函式是物件 可從函式中返回用於構建高階函式 def函式名 引數 函式 文件字串 function suite return 表示式 以def 形參必須放在圓括號中 形參只是形式 表示佔據的引數位置 函式的第一行語句可使用文件字串 存放函式說明 利用.doc 呼叫 執行的 需要縮排 return 表示...

阿里雲天池Python訓練營

本節主要介紹python中的類與物件,並針對相關用法進行展開說明。其中拓展了需要掌握及區別的內容,對於類的用法及物件的含義需重點掌握。類定義物件的結構 以類為模板建立物件 物件是類的例項 類不但包含方法定義 還包含所有例項共享的資料 class 類名 類的實現 類的名稱以大寫字母開頭 子類建構函式基...