将数据添加到txt文件(并将其保存在其中)

时间:2020-09-10 11:34:03

标签: python file parameters

我是编程的完整入门者。我尝试将一些信息添加到txt文件中,但不起作用...它确实打印参数,但不会将其添加到txt文件中。所有帮助将不胜感激。

def addpersons(student_number, name, phone_number):

new_person = student_number + name + phone_number
data = data + new_person

with open("data.txt", 'w') as f:
  f.write (data)

print(200300, "Jim", "031213245123")

3 个答案:

答案 0 :(得分:1)

您是否拥有所有代码?由于您要添加未定义data的数据+人员,因此应该抛出错误。您可能看不到它,因为如果这就是您的全部代码,则您不调用该函数就添加全部。

要使其正常工作,请确保正确调用函数addperson,并确保在执行data = data + person之前已定义数据

f.write(data)之间也不应该有空格,但是我怀疑这很重要。

这是应该正常工作的版本:

def addpersons(student_number, name, phone_number):
    new_person = str(student_number) + name + phone_number

    with open("data.txt", 'w') as f:
        f.write(new_person)

addpersons(200300, "Jim", "031213245123")
print(200300, "Jim", "031213245123")

答案 1 :(得分:0)

我看了看您的代码,只说完全错误。将来也请使用带有反引号的md功能简单地粘贴您的代码,无论如何,这样做都会使尝试和回答的人们的生活更加轻松。您的第一个错误是在这一行 new_person = student_number + name + phone_number Student_number是整数,不能在python中连接ints和strs,可以使用内置的str()将其转换为字符串。 您的下一个错误是: data = data + new_person 在此之前未定义数据,我假设您正在执行此操作,因此可以放入多个人,但是您可以通过追加到文件而不是编写来实现此目的。这可以通过执行以下操作来实现: with open("data.txt", "a") as f: 然后,您可以这样做:

with open("data.txt", "w") as f:
    f.write(new_student)

答案 2 :(得分:0)

尝试一下:

def addpersons(student_number, name, phone_number):

    data = ""
    new_person = str(student_number) + name + str(phone_number)
    data = data + new_person
    
    with open("data.txt", 'a') as f:
        f.write(data + '\n')

addpersons(200300, "Jim", "03121324")
addpersons(12345, "Jorj", "098765434")

输出:

enter image description here

或尝试以下操作:

def addpersons(student_number, name, phone_number):

    data = ""
    new_person = str(student_number) + "\t" + name + "\t" + str(phone_number)
    data = data + new_person
    
    with open("data.txt", 'a') as f:
        f.write(data + '\n')

addpersons(200300, "Jim", "03121324")
addpersons(12345, "Jorj", "098765434")

输出:

enter image description here