Loading... ## python 写txt文件 写文件可以用open函数打开,并设置为"w" 的模式(写的模式),writelines写下, 具体代码如下。 ```python import os img_list = os.path.join('data/test.txt') lans=[[[1,2],[3,4],[5,6],[7,8],[9,10]],[[1,2],[3,4],[5,6],[7,8],[9,10]]] with open(img_list, 'w') as f: f.writelines("ann") #第一行 f.writelines("\n") #下一行 for lan in lans: #最外面括号内的索引 for size in lan: #第二层括号内的索引 f.writelines(str(size)) #写第三层括号 f.writelines(",") #退格 f.writelines("\n") #第二层括号内的东西写完,下一行 f.close() #关闭文件 ``` 运行结果在data目录创建test.txt文件,写了三行文字 第一行为开头ann 第二行第三行为列表内容。  ## python 读txt文件 也是用open函数打开,设置为"r"(只读模式),用readlines函数读取全部行的内容, 并使用replace函数去掉换行符,一行行保存下来。 具体代码如下: ```python with open(img_list, 'r') as f: lines = f.readlines() title = lines[0] #第一行为标题 text = [] for line in lines[1:]: line = line.replace('\n', '') #去掉换行符 text.append(line) f.close() print("line1:",text[0]) #内容的第一行 print("line2:",text[1]) #内容的第二行 ``` 运行结果如下 ```python line1: [1, 2],[3, 4],[5, 6],[7, 8],[9, 10], line2: [1, 2],[3, 4],[5, 6],[7, 8],[9, 10], ``` ## python 写npy文件 这个比较简单,其实就是np.save函数保存numpy的数组 ```python import numpy as np # 创建数组 array = np.array([1, 2, 3, 4, 5]) array2 = np.array([1, 2, 3, 4, 5]) txt=[] #要保存的内容 txt.append(array) txt.append(array2) # 将数组保存为.npy文件 np.save('data/data.npy', txt) ``` ## python 读npy文件 这个也是一样,就load函数导入就行了。 ```python import numpy as np # 读取.npy文件 array = np.load('data/data.npy') # 输出数组内容 print(array) ``` 运行结果 ```python [[1 2 3 4 5] [1 2 3 4 5]] ``` ## python 写csv文件 创建列表data,使用open()函数以写入模式打开一个名为data.csv的文件,并使用csv.writer()函数创建一个写入器对象。最后,使用writerows()方法将整个数据列表写入CSV文件。 具体代码如下 ```python import csv # 创建示例数据 data = [ ['Name', 'Age', 'City'], ['John', '25', 'New York'], ['Alice', '30', 'London'], ['Bob', '35', 'Paris'] ] # 写入CSV文件 with open('data/data.csv', 'w', newline='') as file: writer = csv.writer(file) writer.writerows(data) ``` 运行结果  ## python 读csv文件 使用open()函数打开名为data.csv的CSV文件,并将其用csv.reader()函数进行读取,逐行打印CSV文件的内容。 具体代码如下: ```python import csv # 读取CSV文件 with open('data/data.csv', 'r') as file: reader = csv.reader(file) for row in reader: print(row) ``` 运行结果 ```python ['Name', 'Age', 'City'] ['John', '25', 'New York'] ['Alice', '30', 'London'] ['Bob', '35', 'Paris'] ``` ## 追加写入 不管是txt还是csv,将模式设置为“a”,就是追加写入的意思 具体示例代码如下 ```python # 追加数据 # 新数据 new_data = [ ['Mark', '28', 'Sydney'], ['Emily', '32', 'Tokyo'] ] # 打开CSV文件进行追加 with open('data/data.csv', 'a', newline='') as file: writer = csv.writer(file) writer.writerows(new_data) ``` 运行结果为:  ## 附录-一些文件模式 追加模式('a'):以追加模式打开文件,如果文件存在,则将新数据追加到文件末尾,如果文件不存在,则创建新文件。 读写模式('r+'):以读写模式打开文件,可以读取和写入文件。文件指针位于文件开头,可以使用seek()方法更改文件指针的位置。 二进制模式('b'):与其他模式一起使用,表示以二进制模式进行文件操作。例如,'rb'表示以二进制模式打开文件进行读取,'wb'表示以二进制模式打开文件进行写入。 更新模式('+'):与其他模式一起使用,表示对文件进行更新操作。例如,'r+'表示以读写模式打开文件,'a+'表示以追加和读取模式打开文件。 具体代码演示: ```python # 以追加模式打开文件 with open('data.txt', 'a') as file: file.write('This is new content.') # 以读写模式打开文件 with open('data.txt', 'r+') as file: content = file.read() file.write('\nAdditional content.') # 以二进制模式打开文件进行读取 with open('image.jpg', 'rb') as file: data = file.read() # 以二进制模式打开文件进行写入 with open('data.bin', 'wb') as file: file.write(b'\x00\x01\x02\x03') # 以追加和读取模式打开文件 with open('data.txt', 'a+') as file: file.write('\nNew content') file.seek(0) content = file.read() ``` 最后修改:2025 年 02 月 22 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏