立即學習:https://edu.csdn.net/course/play/25498/304543?utm_source=blogtoedu
'''
open()打開或創建一個文件
格式:open('文件路徑','打開模式')
打開模式:rwa等模式,具體參考手冊
close()關閉文件
read()讀取文件
readline()讀取一行文件
readlines()將文件內容讀取到序列中
write()寫入文件
writelines()將序列寫入文件
'''
'''
OS模塊
import os導入
部分常用函數
getcwd()--獲取當前工作目錄
chdir()--修改當前工作目錄
listdir()--獲取指定文件夾中的文件列表
mkdir()--創建一個目錄/文件夾
rmdir()--移除一個目錄(必須是空目錄)
rename()--修改文件和文件夾名稱
stat()--獲取文件相關信息
exit()--退出當前執行的命令,直接關閉當前操作
os.path os中的模塊,操作相當多
'''
import os
# 讀文件按照字符長度讀
f=open('./a.txt','r',encoding='utf-8')
content=f.read(3)
print(content)
f.close()
print('='*60)
# 讀文件按行讀取
f=open('./a.txt','r',encoding='utf-8')
content=f.readline()
while len(content)>0:
print(content,end='')
content=f.readline()
f.close()
print('')
print('='*60)
# 文件的寫入操作
f=open('./b.txt','w')
f.write('hello python\n')
a=['hello java\n','hello php\n','hello C++']
f.writelines(a)
f.close()
# 文件複製函數
# 可能複製圖片等內容,故用二進制
def copy_file(file1,file2):
f1=open(file1,'rb')
f2=open(file2,'wb')
lines=f1.readlines()
for line in lines:
f2.write(line)
f1.close()
f2.close()
copy_file('photo.jpg','newp.jpg')
# 目錄複製函數,通過os模塊操作
def copy_path(dir1,dir2):
# 獲取被複制目錄中的所有文件信息
dlist=os.listdir(dir1)
# 創建新目錄
os.mkdir(dir2)
# 遍歷所有文件,執行文件複製
for f in dlist:
# 爲遍歷到的文件添加文件路徑
file1=os.path.join(dir1,f) # 源
file2=os.path.join(dir2,f) # 目標
# 如果是文件,執行復制操作
if os.path.isfile(file1):
copy_file(file1,file2)
# 如果是目錄,繼續遍歷該級目錄
if os.path.isdir(file1):
copy_path(file1,file2)
copy_path('./venv','./newvenv')