Python基礎(5)集合 序列 基本統計

2021-09-21 14:07:50 字數 4024 閱讀 2283

序列資料保護

例項:基本統計

字典字典應用

元素不可以重複,無序

用大括號 生成集合,但不能為空,空了就成字典了

操作函式或方法

描述s.add(x)

如果x不在集合s中,則將x增加進s

s.discard(x)

移除s中的元素x,如果x不在集合s中,不報錯

s.remove(x)

移除中的元素x,如果x不在集合s中,產生keyerror異常

s.clear()

移除s中所有元素

s.pop()

隨機返回s的乙個元素,更新s,若s為空產生keyerror異常

s.copy()

返回集合s的乙個副本

len(s)

返回集合s的元素個數

x in s

判斷s中元素x,x在集合s中,返回true,否則返回false

x not in s

判斷s中元素x,x不在集合s中,返回true,否則返回false

set(x)

將其他型別變數x轉變為集合型別

字串、元組、列表

序列是有先後關係的一組元素,元素型別可以不同,元素可以重複

操作函式或方法

描述x in s

判斷s中元素x,x在序列s中,返回true,否則返回false

x not in s

判斷s中元素x,x不在序列s中,返

s + t

連線序列s和t

s * n

將序列s複製n次

s[i]

索引,返回第i個元素,i是序號

s[i:j]或s[i:j:k]

切片,返回序列s中第i到j以k為步長的元素子串行

s[::-1]

取反len(s)

返回序列s的長度

min(s)

返回序列s的最小元素,s中元素要可比較

max(s)

返回序列s的最大元素,s中元素要可比較

s.index(x) s.index(x,i,j)

返回序列s從i開始到j位置中第一次出現元素x的位置

s.count(x)

返回序列s**現x的總次數

元祖是序列的一種拓展

元祖一旦建立就不能被修改

可用小括號()或 tuple() 建立,元素間用逗號分隔,小括號可省略

element = 「aaa」,「bbb」,「ccc」

x = 「123」,element,「321」

x[1][1] = 「bbb」

列表是序列的一種拓展

列表建立後可隨意修改

用方括號[ ]或 list() 新建列表

[ ]是真正建立列表,列表的賦值只是傳遞引用,兩個名字指向同乙個列表,並沒有新建列表:list1 = list 2

操作函式或方法

描述ls[i] = k

替換列表ls第i個元素為x

ls[i:j:k] = lt

用列表lt替換ls切片後對應元素子列表

del ls[i]

刪除列表ls中第i元素

del ls[i:j:k]

刪除列表ls中第i到j以k為步長的元素

ls += lt

更新列表ls,將列表lt元素增加到列表ls中

ls *= n

更新列表ls,其元素重複n次

在列表ls最後增加乙個元素x

ls.clear()

刪除列表ls中所有元素

ls.copy()

生成乙個新列表,賦值ls中所有元素

ls.insert(i,x)

在列表ls的第i位置增加元素x

ls.pop(i)

將列表ls中第i位置元素取出並刪除該元素

ls.remove(x)

將列表ls**現的第乙個元素x刪除

ls.reverse()

將列表ls中的元素反轉

不希望資料被程式改變,可將列表轉換為元組型別

/>>>ls = [「cat」,「dog」,「tiger」,1024]

/>>>lt = tuple(ls)

/>>>lt

/(『cat』,『dog』,『tiger』,1024)

#statistic.py 統計

defgetnum()

:#獲取使用者多組數字增加進列表

nums =

inumstr =

input

("請輸入數字(回車退出):"

)while inumstr !="":

eval

(inumstr)

) inumstr =

input

("請輸入數字(回車退出):"

)return nums

defmean

(numbers)

:#計算平均值

s =0.0for num in numbers:

s = s + num

return s/

len(numbers)

defdev

(numbers,mean)

:#計算方差

sdev =

0.0for num in numbers:

sdev = sdev +

(num - mean)**2

return

pow(sdev /

(len

(numbers)-1

),0.5)

defmedian

(numbers)

:#計算中位數

sorted

(numbers)

size =

len(numbers)

if size %2==

0:med =

(numbers[size//2-

1]+ numbers[size//2]

)/2# /表示浮點數除法,//表示整數除法(舍餘數取整)

else

: med = numbers[size//2]

return med

n = getnum(

)m = mean(n)

print

("平均值:{},方差:,中位數:{}."

.format

(m,dev(n,m)

,median(n)

))

對映:一種自定義索引

對映是一種鍵(索引)和值(資料)之間的關係

字典是鍵值對的集合,鍵值對之間無序

採用 或dict( )建立新字典,鍵值對用冒號:表示,用逗號分隔 d =

d [ 「a」 ] ——> 「a」

操作函式或方法

描述del dk

刪除字典d中鍵k對應的資料值

k in d

判斷鍵k是否在字典d中,如果在返回true,否則返回false

d.keys()

返回字典d中所有的鍵資訊

d.values()

返回字典d中所有的值資訊

d.items()

返回字典d中所有的鍵值對資訊

d.get(k,< default >)

鍵k存在,則返回相應值,不在則返回default值

d.pop(k,< default >)

鍵k存在,則取出相應值,不在則返回default值

d.popitem()

隨機從字典d中取出乙個鍵值對,以元祖形式返回

d.clear()

刪除所有的鍵值對

len(d)

返回字典d中元素的個數

實現功能

**定義空字典d

d =

向d新增2個鍵值對元素

d[「a」 = 1];d[「b」 = 2]

修改第2個元素

d[「b」 = 3]

判斷字元「c」是否是d的鍵

「c」 in d

計算d的長度

len(d)

清空dd.clear()

例如:統計資料出現的次數,資料是鍵,次數是值

Python基礎(5) 集合

set,集合,具有某種特質的物件的集體。1,集合的定義 s set 定義乙個空集合 s 數字元素直接新增,字串元素要用括號括起來 插播一條重要特性,集合是無序的,也就是說,集合沒有索引,標誌集合元素的不再是順序而是內容,所以,集合又是不重複的。也就是,集合元素滿足互異性,每個元素在這個集合內都只有乙...

python 基礎知識5 集合

集合是無序的,不重複的資料集合,它裡面的元素是可雜湊的 不可變型別 但是集合本身是不可雜湊 所以集合做不了字典的鍵 的。以下是集合最重要的兩點 1 去重,把乙個列表變成集合,就自動去重了。2 關係測試,測試兩組資料之前的交集 差集 並集等關係。set1 set print set1 add 無序 s...

Python基礎 16 集合

集合概述 集合是一組無序不重複的元素集合,可以使用大括號 和set 函式建立集合 注 建立乙個空集合必須用set 而不是 因為 是用來建立乙個空字典的 集合特點 集合是無序的 集合與列表 元組類似,可以儲存多個資料,但是這些資料是不重複的。set可以快速的完成對list中的元素去重複的功能 num ...