覆盖文本文件中的行

时间:2021-03-05 19:45:37

标签: python file

我想在不丢失数据的情况下覆盖文件中的行。该程序首先将制表符分隔的数据写入“students2.txt”文件。

filename = "students2.txt"
file_write = open(filename, "a")

num_of_students = int(input("Enter number of students: "))
for i in range(1, num_of_students + 1):
    print("Student", i)
    first_name = input("Enter your first name: ")
    last_name = input("Enter your last name: ")
    matric_no = input("Enter your matric number: ")
    print("Input attendance")
    mar_4 = int(input())
    mar_11 = int(input())
    mar_18 = int(input())
    mar_25 = int(input())
    file_write.write(first_name.title() + "\t")

    file_write.write(last_name.title() + "\t")
    file_write.write(matric_no.upper() + "\t")
    file_write.write(str(mar_4) + "\t")
    file_write.write(str(mar_11) + "\t")
    file_write.write(str(mar_25) + "\t")
    file_write.write(str(mar_18) + "\t" + "\n")
file_write.close()

然后它从该文件中读取并执行一些计算

file_read = open("students2.txt", "r")
file_write = open("students2.txt", "a")
for i in file_read.readlines():
    i = i.strip().split()
    std_sum = int(i[3]) + int(i[4]) + int(i[5]) + int(i[6])
    std_attd_percent = (std_sum/4) * 100
    file_write.write(str(std_attd_percent))

我想将 std_attd_percent 写入“student2.txt”的每一行,但它只是将其全部写入行尾。

0 个答案:

没有答案
相关问题