8 集合型別 檔案處理

2022-06-06 14:39:09 字數 3915 閱讀 9373

補充:setdefault與update的區別

例:d=

d.update()

res = d.setdefault(''gender'',''male'')

print(d)輸出結果為d=

print(res)輸出結果為d=

一、集合

例:

pythons = ["

tom","

jack

","alex

","egon

","lxx"]

linuxs = ["

lili

","hanmeimei

","張三

","egon

","lxx

","jay"]

#找出即學linux與pythopn的學生l=

for name in

pythons:

if name in

linuxs:

print(l)

通過上述的for迴圈可以達到目的,但是集合在比較方面有便利之處

1、用途:

去重:(1)無法保證順序

msg = "

hello

"res=set(msg)

print(''

.join(res))

names = ['

egon

','lxx

','lili

',"egon

","egon"]

print(list(set(names)))

(2)只能針對不可變的元素去重

students_info =[,,

,,

,]new_l =

for info in

students_info:

if info not

innew_l:

print(new_l)

(3)集合內的元素無法重複,只能列印出乙個

2、集合內的關係運算

定義:在{}內用逗號分隔開多個元素

資料型別轉換:工廠函式為set

res = set("

hello")

print

(res)

s =set()

print(s,type(s))

3、通常操作與內建方法

pythons = 

linuxs =

(1)交集:取兩個集合的共同部分

print(pythons &linuxs)

print

(pythons.intersection(linuxs))

pythons = pythons &linuxs

pythons.intersection_update(linuxs)

(2)並集:兩個集合合併到一起

print(pythons |linuxs)

print(pythons.union(linuxs))

(3)差集:乙個集合減掉另乙個集合共同的部分

#

只學了python的學生姓名

print(pythons -linuxs)

print

(pythons.difference(linuxs)) #

只學了linux的學生姓名

print(linuxs - pythons)

(4)交叉補集/對稱補集:兩個集合相互減,然後再並到一起

res = (pythons - linuxs) | (linuxs -pythons)

res = pythons ^linuxs

print

(res)

print(pythons.symmetric_difference(linuxs))

(5)父子集合:包含關係,當乙個集合完全包含了另乙個集合才能當爹qaq

s1 = 

s2 =

print(s1 >=s2)

print(s2 <=s1)

s1 =

s2 =

print(s1 >=s2)

print

(s1.issuperset(s2))

print(s2 <=s1)

print(s2.issubset(s1))

**需要掌握的

1、update(增加)

s1.update()

print(s1)

2、s1.add(增加)

s1.add(4)

print(s1)

3、刪除

s1 = 

s1.remove(3)

print

(s1)

s1.remove(333333333)

s1.discard(333333333)

print

(s1)

res=s1.pop()

print

(s1)

print

(res)

s1.clear()

print(s1)

4、拷貝

s1.copy

5、isdisjoint

用於判斷這兩個集合是否存在共同的元素,如果完全不同輸出為true

s1 = 

s2 =

print

(s1.isdisjoint(s2))

#輸出結果為true

總結:集合可以存多個值,是無序的,是可變的

二、檔案處理

(1)什麼是檔案

檔案是作業系統提供給使用者或者應用程式操作硬碟的一種機制

(2)為何要用檔案

讀寫檔案------->訪問硬碟

應用程式:     open()

作業系統:     開啟檔案

計算機硬體:    硬碟空間

(3)如何使用檔案

開啟檔案

讀/寫關閉檔案

f = open(r"

a\a.txt

",mode="rt"

,)#f的值-》檔案控制代碼,檔案物件

res =f.read()

print

(res,type(res))

f.close()

#**作業系統的資源

print

(f)f.read()

with open(r

"a\a.txt

",mode="rt"

,) as f,\

open(r

"a\b.txt

",mode="rt"

,) as f1:

res =f.read()

with open(r

"a\a.txt

",mode="rt"

,) as f:

for line in

f:

#print(line)

res=line.strip('

\n').split(':'

)

print(res)

Python自娛 8 集合

集合是可變資料型別 它裡邊的元素必須是不可變資料型別 set就是不存value的字典,只存key set中的元素是不能重複的,無序的,可雜湊的 因為無序,所以沒有索引 雜湊的特點就是雜湊,所以set內部是無序的 建立集合的方式set set set set set set 增刪改查set.add 正...

day08 集合 檔案處理

集合 list tuple dict一樣都可以存放多個值,但是集合主要用於 去重 關係運算 定義 在 內用逗號分隔開多個元素,集合具備以下三個特點 1 每個元素必須是不可變型別 2 集合內沒有重複的元素 3 集合內元素無序 s 本質 s set ps 1 列表型別是索引對應值,字典是key對應值,均...

java8 集合操作

1.實體類要實現comparable介面public class industryinfo implements comparable get set 省略 2.按照num逆序排列listlistre list.stream sorted comparator.comparing industryi...