目錄
- 大綱
- Python文件類型及匯總
- 一、元組
- 二、文件
- 三、pickle存儲和讀取python對象
- 四、類型匯總
大綱
Python文件類型及匯總
一、元組
1 特征
1.任意對象的有序集合
2.通過下標(biāo)訪問
3.不可變
4.長度固定,任意類型,任意嵌套
>>> t = (1,2,3,4,5)
>>> t[0] = 2
Traceback (most recent call last):
File "stdin>", line 1, in module>
TypeError: 'tuple' object does not support item assignment
2 聲明
(value1,value2,…)
3 操作
1.index(val):查找索引
2.count(val):統(tǒng)計數(shù)據(jù)
>>> t
(1, 2, 3, 4, 5)
>>> t.index(3)
2
>>> t.count(3)
1
元組代碼
(1,2) #定義一個元組
(1, 2)
(1,2)+(3,4)#增加元組
(1, 2, 3, 4)
t=[1,2,3,4,5]
res=[x**2 for x in t] #計算出t中元素的平方并放在res中
res
[1, 4, 9, 16, 25]
t.index(3) #檢索3的位置
2
t.count(3) #數(shù)元組t中3的個數(shù)
1
from collections import namedtuple #引入namedtuple給員工賦值
employee=namedtuple("employee",["named","age","department","salary"]) #定義一個員工模板
Jerry=employee("Jerry",30,"財務(wù)部","9000.00")#給名叫Jerry的員工賦值
Jerry
employee(named='Jerry', age=30, department='財務(wù)部', salary='9000.00')
Jerry.age #讀取Jerry的年齡
30
注意事項:列表 元組的轉(zhuǎn)換
元組解析
元組內(nèi)部列表的修改:
二、文件
1 基本語法
file = open(‘文件名',mode)
三種模式
mode:r ,w ,a
>>> myfile = open('hello.txt','w') #若沒有,自動創(chuàng)建文件
2 操作
read、readlines、close方法
>>> myfile = open('hello.txt','w')
>>> myfile.write("你好啊,我叫賽利亞\n") #寫操作
10
>>> myfile.close()
>>> f = open('hello.txt')
>>> f.read()
'你好啊,我叫賽利亞\n'
>>> f.read()
''
>>> f = open('hello.txt')
>>> f.readline() #readline一次讀取一行,返回字符串
'你好啊,我叫賽利亞\n'
>>> f.readline()
''
>>> l = open('hello.txt').readlines() #readline一次讀取全部行,返回列表
>>> l
['你好啊,我叫賽利亞\n']
with open() as …用于臨時打開文件,結(jié)束后自動close釋放資源(推薦這種用這種方式打開文件進(jìn)行操作)
>>> f = open('hello.txt')
>>> f.read()
'你好啊,我叫賽利亞\n'
>>> f.read()
''
>>> f = open('hello.txt')
>>> f.readline() #readline一次讀取一行,返回字符串
'你好啊,我叫賽利亞\n'
>>> f.readline()
''
>>> l = open('hello.txt').readlines() #readline一次讀取全部行,返回列表
>>> l
['你好啊,我叫賽利亞\n']
網(wǎng)
易
云
課
堂
文件權(quán)限
- rb 以二進(jìn)制格式打開一個文件用于只讀。文件指針將會放在文件的開頭。一般用于 非文本文件如圖片等。
注意:二進(jìn)制文件把內(nèi)容表示為一個特殊的 bytes 字符串類型。
# file = open("demo1/1.txt","rb")
file = open("demo1/1.png","rb")
ret = file.read() #b'huangzhi' huangzhi
print(ret)
file.close()
r+ 打開一個文件用于讀寫。文件指針將會放在文件的開頭。
file = open("demo1/1.txt","r+")
# ret = file.read() #讀取全部內(nèi)容
# print(ret)
file.write("guyin") #從頭寫入,原有內(nèi)容會逐漸被覆蓋
file.close()
- rb+ 以二進(jìn)制格式打開一個文件用于讀寫。文件指針將會放在文件的開頭。一般用于 非文本文件如圖片等。
- wb 以二進(jìn)制格式打開一個文件只用于寫入。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。一般用于非文本文件如圖片等。
from demo1.img import img2
file = open("demo1/2.jpg","wb")
file.write(img2)
file.close()
- w+ 打開一個文件用于讀寫。如果該文件已存在則打開文件,并從開頭開始編輯,即 原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。
file = open("demo1/1.txt","w+")
file.write("hello world")
ret = file.read()
print(ret)
file.close()
- a 打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。
也 就是說,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件 進(jìn)行寫入。
#在demo1下的111.txt中追加“guyin”
# file = open("demo1/111.txt","a")
file = open("demo1/3.txt","a")
file.write("guyin")
file.close()
- ab 以二進(jìn)制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文 件的結(jié)尾。也就是說,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在, 創(chuàng)建新文件進(jìn)行寫入。
- a+ 打開一個文件用于讀寫。如果該文件已存在,文件指針將會放在文件的結(jié)尾。
- 文 件打開時會是追加模式。如果該文件不存在,創(chuàng)建新文件用于讀寫。
file = open("demo1/111.txt","a+")
file.write("yangyong")
ret = file.read()
print(ret)
file.close()
- ab+ 以二進(jìn)制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文 件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件用于讀寫。
三、pickle存儲和讀取python對象
dump(對象,目標(biāo)文件)
load(文件)
f = open('datafile.pkl','wb')
>>> import pickle
>>> d = {'a':1,'b':2}
>>> pickle.dump(d,f)
>>> f.close()
>>> f = open('datafile.pkl','rb')
>>> data = pickle.load(f)
>>> data
{'a': 1, 'b': 2}
四、類型匯總
到此這篇關(guān)于Python基礎(chǔ)之元組與文件知識總結(jié)的文章就介紹到這了,更多相關(guān)Python元組與文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 一篇文章帶你了解python元組基礎(chǔ)
- Python內(nèi)置數(shù)據(jù)結(jié)構(gòu)列表與元組示例詳解
- python元組打包和解包過程詳解
- python中列表(list)和元組(tuple)的深入講解
- Python中元組的基礎(chǔ)介紹及常用操作總結(jié)