我是编程的完整入门者。我尝试将一些信息添加到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")
答案 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")
输出:
或尝试以下操作:
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")
输出: