補充: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")
(res)
s =set()
print(s,type(s))
3、通常操作與內建方法
pythons =linuxs =
(1)交集:取兩個集合的共同部分
print(pythons &linuxs)(pythons.intersection(linuxs))
pythons = pythons &linuxs
pythons.intersection_update(linuxs)
(2)並集:兩個集合合併到一起
print(pythons |linuxs)print(pythons.union(linuxs))
(3)差集:乙個集合減掉另乙個集合共同的部分
#只學了python的學生姓名
print(pythons -linuxs)
(pythons.difference(linuxs)) #
只學了linux的學生姓名
print(linuxs - pythons)
(4)交叉補集/對稱補集:兩個集合相互減,然後再並到一起
res = (pythons - linuxs) | (linuxs -pythons)res = pythons ^linuxs
(res)
print(pythons.symmetric_difference(linuxs))
(5)父子集合:包含關係,當乙個集合完全包含了另乙個集合才能當爹qaq
s1 =s2 =
print(s1 >=s2)
print(s2 <=s1)
s1 =
s2 =
print(s1 >=s2)
(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)
(s1)
s1.remove(333333333)
s1.discard(333333333)
(s1)
res=s1.pop()
(s1)
(res)
s1.clear()
print(s1)
4、拷貝
s1.copy
5、isdisjoint
用於判斷這兩個集合是否存在共同的元素,如果完全不同輸出為true
s1 =s2 =
(s1.isdisjoint(s2))
#輸出結果為true
總結:集合可以存多個值,是無序的,是可變的
二、檔案處理
(1)什麼是檔案
檔案是作業系統提供給使用者或者應用程式操作硬碟的一種機制
(2)為何要用檔案
讀寫檔案------->訪問硬碟
應用程式: open()
作業系統: 開啟檔案
計算機硬體: 硬碟空間
(3)如何使用檔案
開啟檔案
讀/寫關閉檔案
f = open(r"a\a.txt
",mode="rt"
,)#f的值-》檔案控制代碼,檔案物件
res =f.read()
(res,type(res))
f.close()
#**作業系統的資源
(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...