python成長之路day08

2021-10-07 01:45:42 字數 4822 閱讀 6160

一、集合關係運算與常用操作

二、檔案操作

關係運算

friends1 =

friends2 =

1、取二者的共同好友:交集

res = friends1 & friends2

print(res)

2、取二者所有的好友有哪些:並集

res = friends1 | friends2

print(res)

3、去二者所有的好友有哪些:差集(

res=friends1 - friends2

print(res)

res = friends2 - friends1

print(res)

4、取到兩者獨有的好友

res1=friends1 - friends2

res2=friends2 - friends1

print(res1 | res2) #原理

print(friends1 ^ friends2)

高階,簡化上面步驟

5、父子集:乙個集合包含另外乙個集合,他們才有父子集的關係

s1=s2=

print(s1 > s2)#false

print(s1 < s2)#false

print(s1 = s2)#false

當集合1》集合2 結果true時,意味著集合1內的元素完全包含了集合2

s1 =

s2 =

print(s1>s2) #結果true,代表s1是s2的父集

print(s2s1 =

s2 =

print(s1 == s2)

二、常用操作與內建方法

s1 =

for item in s1:

print(item)

s1 =

s1.update()

print(id(s1))#集合可變型別

s1.clear()

s1.remove()#指定刪除,捏碎了,不要做賦值

s1.remove(333)

print(s1)

s1.discard()

del s1#不能刪除集合中某乙個元素

res = s1.discard(333)

print(s1)

print(res)#無返回賦值

不一樣的地方:當刪除的元素不存在時,s1.discard不會報錯 remove指定元素不存在會報錯

s1.pop()

res=s1.pop()

print(s1)#隨機刪除,取走

print(res)

s1.add()

s1.add(555555)

print(s1)#加的位置隨機

s1.isdisjoint()#s1與s2沒有共同的元素則返回true

s1=s2=

print(s1.isdisjoint(s2))

總結set:

存多個值

無序set集合是可變型別

『』』1,什麼是檔案

檔案是作業系統提供給使用者/應用程式操作硬碟的乙個虛擬單位/功能

應用程式/使用者對檔案的讀寫操作都是在向作業系統發起系統呼叫

作業系統接受到呼叫請求後,會將該請求轉換成具體的硬碟操作

2,為何要用檔案

應用程式操作檔案為了將記憶體中的資料永久儲存到硬碟中

3,如何操作檔案

『』』檔案的路徑:找到檔案的位址

絕對路徑:r』c:\a\b\c\new.txt』

相對路徑:相對當前程式所在的資料夾往後找「aaa/a.txt"

f = open(r"aaa/a.txt",mode=『rt』,encoding=『utf-8』)#用什麼寫用什麼讀

data=f.read()

print(data)

f.close()#一定不要忘了關閉,釋放作業系統資源

二、檔案模式

2.1控制檔案讀寫內容的模式(不能單獨使用,必須與rwa結合使用)

t:1,讀寫內容都是以字串為單位

2、只適用於文字檔案

3、必須制定encoding引數

b:1、讀寫內容都是以bytes為單位

2、適用於所有檔案

3、一定不能制定encoding引數

2.2控制檔案讀寫操作的模式

r:1,唯讀模式

2,當檔案不存在時就報錯

f = open(『b.txt』,mode=『rt』,encoding=『utf-8』)

data=f.read()#read是指標運動讀下來

print(data)

f.close()

w1,只寫模式

2,當檔案不存在時則報錯

3,當檔案村愛是檔案指標跳到檔案開頭

f = open(『c.txt』,mode=『wt』,encoding=『utf-8』)

name = input(』>>:』)

f.write(name)

f.close()

f = open(『c.txt』,mode=『wt』,encoding=『utf-8』)

f.write(「egon\n」)

f.write(「張三\n」)

f.write(「李四\n」)

f.close()

a1,只追加模式

2,當檔案不存在時會建立乙個空檔案,然後檔案指標跳到檔案開頭

3,當檔案存在時檔案內容不會被清空,檔案指標跳到末尾

f = open(『c.txt』,mode=『at』,encoding=『utf-8』)

f.write(『aaa\n』)

f.write(『bbb\n』)

f.write(『ccc\n』)

f.close()

w與a模式的相同點

在檔案開啟了沒有被關閉的情況下,連續的寫入,新寫入的內容總是跟在老內容之後

w與s模式額不同點

在檔案關閉了重新開啟的情況下,a模式永遠吧檔案指標放到檔案末尾

案例一:編寫乙個使用者註冊功能,註冊的內容是賬號名和名

surname = input(『請輸入您的賬號》:』).strip()

pwd = input(『請輸入您的密碼》:』).strip()

f = open(『註冊.txt』,mode=『at』,encoding=『utf-8』)

f.write("%s:%s\n" %(surname,pwd))

f.close()

案例二、編寫乙個使用者驗證功能,賬號密碼來自於檔案

surname = input(『請輸入您的賬號》:』).strip()

pwd = input(『請輸入您的密碼》:』).strip()

開啟檔案,讀取賬號密碼與使用者輸入地賬號密碼進行比對

f = open(『註冊.txt』,mode=『rt』,encoding=『utf-8』)

for line in f:

print(line)

f.close()

for line in f:

name, pwd = line.strip("\n").split(』:』)

if surname == name and pwd == pwd

print(『登入成功』)

break

else:

print(『密碼或賬號輸入錯誤』)

總結:一、交集及其運用:並集是取二者所有用| 交集二者共有& 差集取二者獨有-

父子集:乙個集合包含另外乙個集合為true說明乙個包含另外乙個所有值

由於集合的可變性,用update可以增減,在集合中remove指定刪除會報錯 pop隨機刪除 discard指定刪除但是不會報錯 add隨機加值

二、檔案操作:檔案是作業系統提供給使用者/應用程式操作硬碟的乙個虛擬單位/功能

應用程式/使用者對檔案的讀寫操作都是在向作業系統發起系統呼叫

作業系統接受到呼叫請求後,會將該請求轉換成具體的硬碟操作

應用程式操作檔案為了將記憶體中的資料永久儲存到硬碟中

檔案存完一定要f.close()釋放作業系統資源

t:1,讀寫內容都是以字串為單位

2、只適用於文字檔案

3、必須制定encoding引數

b:1、讀寫內容都是以bytes為單位

2、適用於所有檔案

3、一定不能制定encoding引數

r:1,唯讀模式

2,當檔案不存在時就報錯

f = open(『b.txt』,mode=『rt』,encoding=『utf-8』)

data=f.read()#read是指標運動讀下來

print(data)

f.close()

w1,只寫模式

2,當檔案不存在時則報錯

3,當檔案村愛是檔案指標跳到檔案開頭

f = open(『c.txt』,mode=『wt』,encoding=『utf-8』)

name = input(』>>:』)

f.write(name)

f.close()

f = open(『c.txt』,mode=『wt』,encoding=『utf-8』)

f.write(「egon\n」)

f.write(「張三\n」)

f.write(「李四\n」)

f.close()

a1,只追加模式

2,當檔案不存在時會建立乙個空檔案,然後檔案指標跳到檔案開頭

3,當檔案存在時檔案內容不會被清空,檔案指標跳到末尾

w與a模式的相同點

在檔案開啟了沒有被關閉的情況下,連續的寫入,新寫入的內容總是跟在老內容之後

w與s模式額不同點

在檔案關閉了重新開啟的情況下,a模式永遠吧檔案指標放到檔案末尾

Python課程回顧(day08)

什麼是檔案 檔案是作業系統提供給使用者 應用程式的一種虛擬單位,這種單位可以直接對映硬碟空間 為什麼要使用檔案 由於使用者無法直接操作硬體,所以使用者或應用程式直接操作檔案 讀 寫 就會被作業系統轉換成具體的硬碟操作,從而實現使用者或應用程式將資料永久的儲存在硬碟中 如何使用檔案 檔案處理的三個步驟...

Python 學習day08周總結

目錄計算機組成 儲存器輸入裝置 輸出裝置 應用程式的啟動 32位和64位 多核cpu 機械硬碟工作原理 計算機作業系統 程式語言的分類 網路的瓶頸效應 變數資料型別 字串列表 字典流程控制 檔案處理 異常處理 程式語言是人與計算機交流的介質 通過程式語言寫一堆檔案 取代勞動力,幫人類幹活 控制硬體 ...

Python之路day08 檔案讀寫操作 函式初識

今天挑戰一下,將day08和day09的搞定。今天主要學習了檔案的操作讀寫 來來總結一波 學習了檔案的讀 r rb r r b 寫 w wb w w b 檔案控制代碼,seek游標,flush強制重新整理檔案內容,tell 告訴當前控制代碼所在的位置 int day09 函式的定義 傳參 實參 形參...