国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python文件讀寫保存操作的示例代碼

2020-02-15 22:58:15
字體:
來源:轉載
供稿:網友

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

單個文件的讀操作:

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

讀取一個test.txt文件 刪除指定字符之前的文本

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

import sysfilePath = "/Users/xxxxxx/Desktop/test.txt"# 打開文件files = open(filePath, 'r')# 轉成listf_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()            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 方山县| 方城县| 芷江| 海阳市| 和田市| 靖州| 永昌县| 富宁县| 深圳市| 桑日县| 东山县| 霍邱县| 巫山县| 双峰县| 海丰县| 沐川县| 大邑县| 成武县| 三门县| 磐石市| 大理市| 漯河市| 平阳县| 海丰县| 甘谷县| 海宁市| 潜山县| 峡江县| 宜都市| 保山市| 苏尼特右旗| 甘德县| 岫岩| 同心县| 台前县| 福鼎市| 玉门市| 卫辉市| 武冈市| 九龙县| 银川市|