习题16 读写文件

# from sys import argv

# script, filename = argv
filename = input("请输入您要操作的文件名: ")        # 还是用输入替代
print(f"We're going to erase {filename}.")
print("If you don't want that, hit CTRL-C (^C).")
print("IF you do want that, hit RETURN.")

input("?")

print("Opening the file...")
target = open(filename, 'w')

print("Truncating the file.   Goodbye!")
target.truncate()                                       # 清空文件

print("Now I'm going to sak you for three lines.")

line1 = input("line 1: ")
line2 = input("line 2: ")
line3 = input("line 3: ")

print("I'm going to write these to the file.")

target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")

print("And finally, we close it.")
target.close()

"""
open("example.txt","r")
example.txt 文件名 
r只读 若不带参数,默认只读
w写(若文件不存在则创建,已存在文件会被清空) 
x独占模式(若文件不存在则创建,已存在文件会抛出异常) 
a追加模式(若文件不存在则创建,已存在的文件内容会被附加到尾部)

write()
close()

"""

# from sys import argv

# script, filename = argv
filename = input("请输入您要操作的文件名: ")        # 还是用输入替代
print(f"We're going to erase {filename}.")
print("If you don't want that, hit CTRL-C (^C).")
print("IF you do want that, hit RETURN.")

input("?")

print("Opening the file...")
target = open(filename, 'w')

print("Truncating the file.   Goodbye!")
target.truncate()                                       # 清空文件

print("Now I'm going to sak you for three lines.")

line1 = input("line 1: ")
line2 = input("line 2: ")
line3 = input("line 3: ")

print("I'm going to write these to the file.")

target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")

print("And finally, we close it.")
target.close()

"""
open("example.txt","r")
example.txt 文件名 
r只读 若不带参数,默认只读
w写(若文件不存在则创建,已存在文件会被清空) 
x独占模式(若文件不存在则创建,已存在文件会抛出异常) 
a追加模式(若文件不存在则创建,已存在的文件内容会被附加到尾部)

write()
close()

"""

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python 文件读写习题主要涉及文件的读取与写入操作。下面给出一个例子来说明具体的练习内容。 假设有一个名为"students.txt"的文本文件,其中存储着学生的信息,每个学生的信息占据一行,包括学号、姓名和年龄,格式为"学号 姓名 年龄"。要求编写一个程序,实现以下功能: 1. 读取"students.txt"文件的内容,并将每个学生的信息存储到一个字典中; 2. 将字典中的学生信息按照学号进行排序; 3. 将排序后的学生信息写入到一个新的文本文件"sorted_students.txt"中。 下面是一个可能的实现示例: ```python # 读取文件并存储学生信息到字典中 students = {} with open("students.txt", "r") as file: for line in file: student_info = line.strip().split(" ") student_id = student_info[0] student_name = student_info[1] student_age = student_info[2] students[student_id] = {"姓名": student_name, "年龄": student_age} # 按照学号进行排序 sorted_students = sorted(students.items(), key=lambda x: int(x[0])) # 写入排序后的学生信息到新文件 with open("sorted_students.txt", "w") as file: for student in sorted_students: student_id = student[0] student_name = student[1]["姓名"] student_age = student[1]["年龄"] file.write(f"{student_id} {student_name} {student_age}\n") ``` 这个例子中,首先使用`with open`语句读取"students.txt"文件,并逐行解析学生信息,并将其存储到一个字典`students`中;然后,使用`sorted`函数对字典中的元素按照学号进行排序,并将排序结果存储到一个新的列表`sorted_students`中;最后,使用`with open`语句打开"sorted_students.txt"文件,并逐行写入排序后的学生信息。 注意,这只是一个例子,实际的文件读写练习可能要求你解决其他具体问题。根据练习题的要求,你可能需要使用更加灵活的方法来读取文件、解析数据和写入文件,但是可以参考上面的示例来理解基本的文件读写操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值