日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

詳解Python IO編程

瀏覽:21日期:2022-07-16 13:36:29
文件讀寫讀文件

try: # windows下utf8 f = open(’./README.md’, ’r’, encoding=’utf8’, errors=’ignore’) print(f.read())finally: f and f.close()# 用with簡(jiǎn)化with open(’./README.md’, ’r’, encoding=’utf8’) as f: print(f.read())# 迭代讀取大文件with open(’./README.md’, ’r’, encoding=’utf8’) as f: # readline()可以每次讀取一行內(nèi)容 for line in f.readlines(): # 把末尾的’n’刪掉 print(line.strip()) # 讀取二進(jìn)制文件f = open(’/Users/michael/test.jpg’, ’rb’)f.read() # b’xffxd8xffxe1x00x18Exifx00x00...’ # 十六進(jìn)制表示的字節(jié)寫文件

寫文件和讀文件是一樣的,唯一區(qū)別是調(diào)用open()函數(shù)時(shí),傳入標(biāo)識(shí)符’w’或者’wb’表示寫文本文件或?qū)懚M(jìn)制文件

可以反復(fù)調(diào)用write()來(lái)寫入文件,但是務(wù)必要調(diào)用f.close()來(lái)關(guān)閉文件。當(dāng)我們寫文件時(shí),操作系統(tǒng)往往不會(huì)立刻把數(shù)據(jù)寫入磁盤,而是放到內(nèi)存緩存起來(lái),空閑的時(shí)候再慢慢寫入。只有調(diào)用close()方法時(shí),操作系統(tǒng)才保證把沒有寫入的數(shù)據(jù)全部寫入磁盤。忘記調(diào)用close()的后果是數(shù)據(jù)可能只寫了一部分到磁盤,剩下的丟失了。所以,還是用with語(yǔ)句來(lái)得保險(xiǎn)

with open(’./test2.md’, ’a’, encoding=’utf8’) as f: f.write(’Hello, python!’) # 文件內(nèi)字符替換,把你好替換為hi,然后讀取內(nèi)容到內(nèi)存中with open(’test.txt’,’r’) as f: s = f.readlines()# 接著打開文件,用replace替換掉你內(nèi)存中的內(nèi)容,然后寫入文件with open(’test.txt’,’w’) as w: for i in s: w.write(i.replace(’你好’,’hi’))StringIO和BytesIOStringIO

在內(nèi)存中讀寫str。

from io import StringIOf = StringIO()f.write(’hello’)f.write(’ ’)f.write(’world!’)print(f.getvalue()) # 方法用于獲得寫入后的str。f = StringIO(’Hello!nHi!nGoodbye!’)while True: s = f.readline() if(s == ’’): break print(s.strip())BytesIO

內(nèi)存中讀寫bytes

from io import BytesIOf = BytesIO()f.write(’中文’.encode(’utf-8’)) # 寫入的不是str,而是經(jīng)過(guò)UTF-8編碼的bytes。print(f.getvalue())f = BytesIO(b’xe4xb8xadxe6x96x87’)f.read() # b’xe4xb8xadxe6x96x87’操作文件和目錄

import osos.name # 如果是posix,說(shuō)明系統(tǒng)是Linux、Unix或Mac OS X,如果是nt,就是Windows系統(tǒng)。os.uname() # 注意uname()函數(shù)在Windows上不提供環(huán)境變量

在操作系統(tǒng)中定義的環(huán)境變量,全部保存在os.environ這個(gè)變量中

import osos.name’nt’os.environ # 獲取環(huán)境變量os.environ.get(’PATH’)os.environ.get(’x’, ’default’)操作文件和目錄

操作文件和目錄的函數(shù)一部分放在os模塊中,一部分放在os.path模塊中

# 查看當(dāng)前目錄的絕對(duì)路徑:os.path.abspath(’.’)# 當(dāng)前的目錄名os.path.dirname(os.path.abspath(__file__))# 在某個(gè)目錄下創(chuàng)建一個(gè)新目錄,首先把新目錄的完整路徑表示出來(lái):os.path.join(’/Users/michael’, ’testdir’) # ’/Users/michael/testdir’# 然后創(chuàng)建一個(gè)目錄:os.mkdir(’/Users/michael/testdir’)# 刪掉一個(gè)目錄:os.rmdir(’/Users/michael/testdir’)# 路徑拆分os.path.split(’/Users/michael/testdir/file.txt’)# 獲得文件擴(kuò)展名os.path.splitext(’/path/to/file.txt’)# 對(duì)文件重命名os.rename(’test.txt’, ’test.py’)# 刪掉文件os.remove(’test.py’)#OS模塊#os模塊就是對(duì)操作系統(tǒng)進(jìn)行操作,使用該模塊必須先導(dǎo)入模塊:import os#getcwd() 獲取當(dāng)前工作目錄(當(dāng)前工作目錄默認(rèn)都是當(dāng)前文件所在的文件夾)result = os.getcwd()print(result)#chdir()改變當(dāng)前工作目錄os.chdir(’/home/sy’)result = os.getcwd()print(result)open(’02.txt’,’w’)#操作時(shí)如果書寫完整的路徑則不需要考慮默認(rèn)工作目錄的問(wèn)題,按照實(shí)際書寫路徑操作open(’/home/sy/下載/02.txt’,’w’)#listdir() 獲取指定文件夾中所有內(nèi)容的名稱列表result = os.listdir(’/home/sy’)print(result)#mkdir() 創(chuàng)建文件夾#os.mkdir(’girls’)#os.mkdir(’boys’,0o777)#makedirs() 遞歸創(chuàng)建文件夾#os.makedirs(’/home/sy/a/b/c/d’)#rmdir() 刪除空目錄#os.rmdir(’girls’)#removedirs 遞歸刪除文件夾 必須都是空目錄#os.removedirs(’/home/sy/a/b/c/d’)#rename() 文件或文件夾重命名#os.rename(’/home/sy/a’,’/home/sy/alibaba’#os.rename(’02.txt’,’002.txt’)#stat() 獲取文件或者文件夾的信息#result = os.stat(’/home/sy/PycharmProject/Python3/10.27/01.py)#print(result)#system() 執(zhí)行系統(tǒng)命令(危險(xiǎn)函數(shù))#result = os.system(’ls -al’) #獲取隱藏文件#print(result)#環(huán)境變量’’’環(huán)境變量就是一些命令的集合操作系統(tǒng)的環(huán)境變量就是操作系統(tǒng)在執(zhí)行系統(tǒng)命令時(shí)搜索命令的目錄的集合’’’#getenv() 獲取系統(tǒng)的環(huán)境變量result = os.getenv(’PATH’)print(result.split(’:’))#putenv() 將一個(gè)目錄添加到環(huán)境變量中(臨時(shí)增加僅對(duì)當(dāng)前腳本有效)#os.putenv(’PATH’,’/home/sy/下載’)#os.system(’syls’)#exit() 退出終端的命令#os模塊中的常用值#curdir 表示當(dāng)前文件夾 .表示當(dāng)前文件夾 一般情況下可以省略print(os.curdir)#pardir 表示上一層文件夾 ..表示上一層文件夾 不可省略!print(os.pardir)#os.mkdir(’../../../man’)#相對(duì)路徑 從當(dāng)前目錄開始查找#os.mkdir(’/home/sy/man1’)#絕對(duì)路徑 從根目錄開始查找#name 獲取代表操作系統(tǒng)的名稱字符串print(os.name) #posix -> linux或者unix系統(tǒng) nt -> window系統(tǒng)#sep 獲取系統(tǒng)路徑間隔符號(hào) window -> linux ->/print(os.sep)#extsep 獲取文件名稱和后綴之間的間隔符號(hào) window & linux -> .print(os.extsep)#linesep 獲取操作系統(tǒng)的換行符號(hào) window -> rn linux/unix -> nprint(repr(os.linesep))#導(dǎo)入os模塊import os#以下內(nèi)容都是os.path子模塊中的內(nèi)容#abspath() 將相對(duì)路徑轉(zhuǎn)化為絕對(duì)路徑path = ’./boys’#相對(duì)result = os.path.abspath(path)print(result)#dirname() 獲取完整路徑當(dāng)中的目錄部分 & basename()獲取完整路徑當(dāng)中的主體部分path = ’/home/sy/boys’result = os.path.dirname(path)print(result)result = os.path.basename(path)print(result)#split() 將一個(gè)完整的路徑切割成目錄部分和主體部分path = ’/home/sy/boys’result = os.path.split(path)print(result)#join() 將2個(gè)路徑合并成一個(gè)var1 = ’/home/sy’var2 = ’000.py’result = os.path.join(var1,var2)print(result)#splitext() 將一個(gè)路徑切割成文件后綴和其他兩個(gè)部分,主要用于獲取文件的后綴path = ’/home/sy/000.py’result = os.path.splitext(path)print(result)#getsize() 獲取文件的大小#path = ’/home/sy/000.py’#result = os.path.getsize(path)#print(result)#isfile() 檢測(cè)是否是文件path = ’/home/sy/000.py’result = os.path.isfile(path)print(result)#isdir() 檢測(cè)是否是文件夾result = os.path.isdir(path)print(result)#islink() 檢測(cè)是否是鏈接path = ’/initrd.img.old’result = os.path.islink(path)print(result)#getctime() 獲取文件的創(chuàng)建時(shí)間 get create time#getmtime() 獲取文件的修改時(shí)間 get modify time#getatime() 獲取文件的訪問(wèn)時(shí)間 get active timeimport timefilepath = ’/home/sy/下載/chls’result = os.path.getctime(filepath)print(time.ctime(result))result = os.path.getmtime(filepath)print(time.ctime(result))result = os.path.getatime(filepath)print(time.ctime(result))#exists() 檢測(cè)某個(gè)路徑是否真實(shí)存在filepath = ’/home/sy/下載/chls’result = os.path.exists(filepath)print(result)#isabs() 檢測(cè)一個(gè)路徑是否是絕對(duì)路徑path = ’/boys’result = os.path.isabs(path)print(result)#samefile() 檢測(cè)2個(gè)路徑是否是同一個(gè)文件path1 = ’/home/sy/下載/001’path2 = ’../../../下載/001’result = os.path.samefile(path1,path2)print(result)#os.environ 用于獲取和設(shè)置系統(tǒng)環(huán)境變量的內(nèi)置值import os#獲取系統(tǒng)環(huán)境變量 getenv() 效果print(os.environ[’PATH’])#設(shè)置系統(tǒng)環(huán)境變量 putenv()os.environ[’PATH’] += ’:/home/sy/下載’os.system(’chls’)# 列出當(dāng)前目錄文件名[x for x in os.listdir(’.’) if os.path.isdir(x)]# 列出所有的.py文件[x for x in os.listdir(’.’) if os.path.isfile(x) and os.path.splitext(x)[1]==’.py’]# walk返回:tupple(dirpath:路徑, dirnames:該路徑下面的目錄list, filenames: 該路徑下面的文件list)for fpathe,dirs,fs in os.walk(path): for f in fs: print(os.path.join(fpathe,f))

注意: 不用通過(guò)直接拼接字符串的方式,來(lái)拆分路徑。這樣可以正確處理不同操作系統(tǒng)的路徑分隔符;

以上就是詳解Python IO編程的詳細(xì)內(nèi)容,更多關(guān)于Python IO編程的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩精品91| 日韩精品一二三| 美女尤物国产一区| 伊人久久亚洲美女图片| 久久精品超碰| 亚洲激精日韩激精欧美精品| 久久黄色影视| 久久国产欧美| 精品国产99| 中文日韩在线| 欧美午夜精彩| 麻豆理论在线观看| 99国产精品免费视频观看| 午夜久久一区| 日韩精品亚洲aⅴ在线影院| 国产精品亚洲片在线播放| 国产精品欧美在线观看| 欧美激情视频一区二区三区免费| 国产精品成人**免费视频 | 国产精品jk白丝蜜臀av小说| 麻豆精品久久久| 国产情侣一区在线| 免费高潮视频95在线观看网站| 精品一区二区三区中文字幕在线| 国产成人免费精品| 影音先锋久久| 日韩1区2区| 国产区精品区| 蜜桃tv一区二区三区| 91精品丝袜国产高跟在线| 麻豆成人91精品二区三区| 欧美一级精品| 午夜欧美理论片| 亚洲一区二区毛片| 国产日韩综合| 视频在线观看91| 视频一区国产视频| 蜜臀精品久久久久久蜜臀| 亚洲精品日本| 日韩精品欧美| 亚洲成av在线| 日本精品影院| 天堂va蜜桃一区二区三区| 午夜一级久久| 日韩高清成人在线| 亚洲精品麻豆| 中文视频一区| 国产日韩一区二区三免费高清 | 免费视频国产一区| 国产亚洲一级| 亚洲精品欧洲| 国产麻豆一区二区三区 | 97人人精品| 在线精品观看| 日韩成人av影视| 久久男人av| 97精品国产| 夜夜精品视频| 日韩专区视频网站| 在线看片国产福利你懂的| 久久黄色影院| 亚洲一区二区免费看| 日韩三区四区| 久久亚洲精品中文字幕蜜潮电影| 黄色在线一区| 国产美女视频一区二区| 亚洲成av人片一区二区密柚| 亚洲一区欧美| 女生影院久久| 久久亚洲二区| 麻豆精品在线| 亚洲天堂日韩在线| 精品国产精品久久一区免费式| 日韩一区欧美| 麻豆精品视频在线观看| 亚洲小说欧美另类婷婷| 精品国产欧美日韩| 日韩免费精品| 亚洲性色视频| 国产69精品久久| 久久国产高清| 国产99精品一区| 午夜亚洲福利| 波多野结衣一区| 国产精品亚洲综合色区韩国| 欧美成人亚洲| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 视频在线不卡免费观看| 综合一区av| 石原莉奈在线亚洲二区| 不卡一二三区| 国产精品一区二区三区美女| 99国产精品久久久久久久成人热| 美腿丝袜亚洲一区| 蜜芽一区二区三区| 日韩亚洲国产欧美| 婷婷综合六月| 免费一级欧美片在线观看网站| 亚洲我射av| 性色一区二区| 91精品高清| 91综合视频| 91综合网人人| 欧美片第1页| 伊人久久视频| 日韩在线观看不卡| 国产精品婷婷| 日韩在线播放一区二区| 伊人久久亚洲美女图片| 先锋影音国产一区| 欧美日韩国产高清| 鲁大师影院一区二区三区| 亚洲乱码久久| 国产日本久久| 欧美综合社区国产| 中文字幕一区二区三区在线视频| 亚洲播播91| 好吊视频一区二区三区四区| 免费精品视频| 丝袜a∨在线一区二区三区不卡| 日韩一区二区免费看| 亚洲视频二区| 欧美伊人影院| 日本成人手机在线| 精品一区二区三区中文字幕| 欧美中文一区二区| 综合精品一区| 麻豆91精品视频| 国产精品久久久久久久免费观看 | 在线亚洲精品| 亚洲日本在线观看视频| 久久国产精品免费精品3p| 精品久久不卡| 日韩欧美自拍| 免费看欧美美女黄的网站| 视频在线观看国产精品| 欧美国产视频| 国产亚洲毛片| 国产精品亚洲欧美| 热久久久久久| 神马久久午夜| 日韩黄色av| 日韩国产欧美一区二区| 亚洲精品美女| 成人羞羞在线观看网站| 综合激情五月婷婷| 精品99在线| 欧美日韩夜夜| 日韩精品久久久久久久电影99爱| 欧美日韩在线精品一区二区三区激情综合| www在线观看黄色| 日韩精品电影一区亚洲| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 99热精品在线观看| 久久69成人| 日韩**一区毛片| 国产综合激情| 捆绑调教美女网站视频一区| 亚洲3区在线| 丝袜脚交一区二区| 欧美日韩免费看片| 久久精品系列| 亚洲精品进入| 亚洲激情欧美| 国产一区二区三区自拍| 国产精品久久久久久久久久白浆 | 国产日韩免费| 亚洲作爱视频| 日韩视频中文| 国产精品白浆| 99久久激情| 视频一区中文字幕| 午夜影院欧美| 久久久人人人| av高清不卡| 亚洲欧洲一区| 亚洲精品.com| 亚洲午夜免费| 久久蜜桃资源一区二区老牛| 亚洲不卡视频| 国产精品一区二区av交换| 久久免费影院| 91亚洲一区| 欧美日中文字幕| 天堂网在线观看国产精品| 国产精品伦理久久久久久| 超级白嫩亚洲国产第一| 久久久久久色| 国产精品一国产精品k频道56| 国产精品男女| 国产精品一级| 久久人人精品| 久久亚洲欧洲| 日韩超碰人人爽人人做人人添| 国产乱人伦丫前精品视频| 久久久久亚洲精品中文字幕| 精品国产第一福利网站| 亚洲精品电影| 日韩高清不卡一区| 久久精品亚洲|