習題之---文件操作
阿新 • • 發佈:2019-04-16
.py 多級 dell text bre port aaa php文件 root
fp2 =open(r"C:\Users\dell\Desktop\練習\3\aaaa.txt","w") for line in fp1:
for i in line:
if i in "0123456789":
fp2.write(line)
break#在的話就跳出,避免重復寫入(一行裏有多個數字的情況)
fp1.close()
fp2.close()
fp2 =open(r"C:\Users\dell\Desktop\練習\3\aaaa.txt","w") for line in fp1.readlines()[::-1]:
if "\n" in line:
fp2.write(line)
else:
fp2.write(line+"\n") fp1.close()
fp2.close()
file_num +=1
if os.path.splitext(file)[1]==".php":
php_file_num +=1
1 把一個文件中包含數字的所有行,篩選存到一個新文件裏
算法:
1 打開兩個句柄 一個讀的 一個寫的
2 遍歷讀取每一行
3 然後遍歷每一行的每個字符
4 判斷這個字符是否在0-9的數字裏
5 在的話把這一行寫到新的文件裏
6 關閉文件
fp1 =open(r"C:\Users\dell\Desktop\練習\3\a.txt","r")fp2 =open(r"C:\Users\dell\Desktop\練習\3\aaaa.txt","w") for line in fp1:
for i in line:
if i in "0123456789":
fp2.write(line)
fp2.close()
2 把一個文件的所有行倒序輸出,倒序輸出後存到一個新的文件中
fp1 =open(r"C:\Users\dell\Desktop\練習\3\a.txt","r")fp2 =open(r"C:\Users\dell\Desktop\練習\3\aaaa.txt","w") for line in fp1.readlines()[::-1]:
if "\n" in line:
fp2.write(line)
else:
fp2.write(line+"\n") fp1.close()
3 統計一下多級目錄個數
統計一下多級目錄下所有的文件個數
統計一個多級目錄下的python文件個數
算法:
使用os.walk 遍歷獲取所有的目錄和文件,進行文件個數
和目錄個數的累加
使用splitext獲取文件的後綴名
如果==.py就做一次累加。
import os
import os.path
dir_num = 0
file_num =0
php_file_num =0
for root,dirs,files in os.walk("e:\\xjk"):
for dir in dirs:
dir_num +=1
for file in files:
if os.path.splitext(file)[1]==".php":
php_file_num +=1
print(‘‘‘
總目錄數:%s
總文件數:%s
php文件數:%s
‘‘‘ %(dir_num,file_num,php_file_num)
)
習題之---文件操作