日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python读取写入文件_Python文件读写保存操作

發布時間:2023/12/2 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python读取写入文件_Python文件读写保存操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

記錄下第一次使用Python讀寫文件的過程,雖然很簡單,第一次實現其實也有些注意的事項。

單個文件的讀操作:

我們先假設一個需求如下:

讀取一個test.txt文件

刪除指定字符之前的文本

需求明白之后,下面開始動手寫代碼,代碼很簡單。就直接上全部的,細節看注釋:

import sys

filePath = "/Users/xxxxxx/Desktop/test.txt"

# 打開文件

files = open(filePath, 'r')

# 轉成list

f_list = files.readlines()

tempIndex = 0

# 對f_list 循環 每個index對應一行數據

for index in range(len(f_list)):

# temp是獲取一行的數據

temp = f_list[index]

# 判斷"test"是不是temp這行數據的首位 如果是首位 result為true

result = temp.find("test") == 0

if result:

# 如果是首位 這就是我們要刪除的位置 獲取他的index

tempIndex = index

break

# 存放新數據

tempContainer = []

for index in range(len(f_list)):

if index > tempIndex:

# tempIndex之前的數據我們不處理,把tempindex之后的數據存到新的list里面

tempContainer.append(f_list[index])

# 這就獲得了我們需要的新數據

print(tempContainer)

以上代碼就完成了需求,非常簡單。有幾個注意點:

直接用open獲取的數據無法進行處理,所以先轉成可以處理的數據,比如list或者字典等。

python的open和C的類似,有r,r+, w, w+等各種狀態,見具體介紹

open函數的常見操作方式

1、r 打開只讀文件,該文件必須存在。

2、r+ 打開可讀寫的文件,該文件必須存在。

3、w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。

4、w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。

多文件讀寫保存

假設一個需求如下:

多個文件都要處理

和上面的test.txt處理方式類似

處理完之后保存到一個新文件夾內

其實這個需求實質上只是比單文件讀操作只多了一個寫操作。其他的就是邏輯稍微繞一下

怎么同時操作多個文件

然后怎么保存成多個文件

肯定是不能一個文件一個文件的去操作,太麻煩了。說下我的實現思路:

把文件放在一個文件夾內

獲取這個文件夾內所有的文件名,拼接成文件路徑

然后創建一個空的新文件夾,用新的空文件夾加上原始的文件名拼接成新的路徑然后寫入進去

下面上代碼:

import os

# 初始的文件夾路徑

filePath = "/Users/xxxxxxxx/Desktop/fileDocument"

# 存放新文件的空白文件夾

newFilePath = "/Users/xxxxxxxx/Desktop/newFileDocument"

# 獲取文件夾下所有文件名

fileNames = os.listdir(filePath)

for file in fileNames:

# 如果當前的文件名包含了'txt',就當它是正確的文件(并不嚴謹)

if file.find("txt") >= 0:

# 拼接成我們要讀取的完整路徑

fileFullPath = filePath + "/" + file

# open 函數 默認是 'r'類型 ,

singleFile = open(fileFullPath)

# 轉換成list數據

singleFile_list = singleFile.readlines()

tempIndex = 0

for index in range(len(singleFile_list)):

temp = singleFile_list[index]

result = temp.find("min") == 0

if result:

tempIndex = index

break

# 拼接新的文件路徑

newSingleFileFullPath = newFilePath + "/" + file

# 以 w 方式打開新的空白文件

newFile = open(newSingleFileFullPath, 'w')

for index in range(len(singleFile_list)):

if index > tempIndex:

# 寫入tempindex行之后的數據

newFile.writelines(singleFile_list[index])

newFile.close()

上面的代碼其實沒啥要介紹的,就是一個for循環然后邏輯和單個文件讀操作一樣,只是多了個寫操作。

End

這只是自己因緣巧合寫的一些簡單的實現,并沒有去系統的學習Python,好多API不了解,可能這種處理不是很好,沒注重性能,沒多線程。等以后深入學習了再優化。

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的python读取写入文件_Python文件读写保存操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。