Python文本文件

使用jupyter notebook
在D盘根目录下创建一个“data.txt”文档,写入整数86,70,58,每个整数占一行。读取"data.txt"文件,并将其按升序排列,重新写入data.txt文件。

如果使用jupyter notebook可以创建代码单元格,先创建文件

# 导入必要的模块
import os
from pathlib import Path
# 将当前工作目录设为 D 盘的根目录
os.chdir('D:\\')
# 打开一个名为 data.txt 的文件。如果文件不存在,则会自动创建它。
data_file = Path('data.txt').open('w')
# 使用 write 方法将整数 867058 写入 data_file。注意,每个整数需要占一行。
data_file.write('86\n')
data_file.write('70\n')
data_file.write('58\n')
# 使用 close 方法关闭 data_file
data_file.close()

然后读取排序写入

# 使用 Path 类的 open 方法以读取模式打开名为 data.txt 的文件
data_file = Path('data.txt').open()
# 使用 readlines 方法读取 data_file 中的所有行,并将它们存储在一个名为 lines 的列表中
lines = data_file.readlines()
# 关闭 data_file
data_file.close()
# 使用列表的 sort 方法将 lines 按升序排列。
lines.sort()
# 使用 Path 类的 open 方法以写入模式打开名为 data.txt 的文件。如果文件已存在,则会被覆盖
data_file = Path('data.txt').open('w')
# 使用 writelines 方法将排序后的行列表写入 data_file
data_file.writelines(lines)
# 关闭 data_file
data_file.close()

img

可以使用Python的文件操作函数(例如open,readline和write)来完成上述操作。下面是使用Python读取“data.txt”文件,并将其按升序排列,重新写入“data.txt”文件的代码示例:

# 打开“data.txt”文件,读取其中的整数
int_list = []
with open("d:\data.txt", "r") as f:
    for line in f:
        int_list.append(int(line))

# 将整数列表按升序排序
int_list.sort()

# 打开“data.txt”文件,将排序后的整数写入文件中
with open("d:\data.txt", "w") as f:
    for i in int_list:
        f.write(str(i) + "\n")

img

  • 使用open()函数打开文件,并将它作为一个文件对象进行读取。
  • 使用文件对象的readlines()方法将文件中的每一行读取到一个列表中。
  • 对列表进行排序,以便按升序排列整数。
  • 打开文件并将其作为一个文件对象进行写入。
  • 将排序后的整数写入文件中,每个整数占一行。
# open the file for reading
with open('D:/data.txt', 'r') as f:
    # read the contents of the file into a list
    data = [int(x) for x in f.readlines()]

# sort the data in ascending order
data.sort()

# open the file for writing
with open('D:/data.txt', 'w') as f:
    # write the sorted data to the file
    for item in data:
        f.write(str(item) + '\n')