学习内容:《python编程:从入门到实践》第二版
知识点:
文件处理 with open()while
练习内容:10章练习题10-3、10-4、10-5
练习10-3:访客 编写一个程序,提示用户输入名字。用户做出响应后,将其名字写入文件guest.txt中。
name = input("请输入您的名字:")filename = 'guest.txt'with open(filename,'w') as file_object:file_object.write(f"{name}\n")
结果:
练习10-4:访客名单 编写一个while循环,提示用户输入名字。用户输入名字后,在屏幕上打印一句问候语,并将一条到访记录添加到文件guest_book.txt中。确保这个文件中的每条记录都独占一行。
while True:name = input("请输入您的名字:")print(f"您好,{name}")filename = 'guest_book.txt'with open(filename,'a') as file_object:file_object.write(f"{name}\n")
自动创建文件txt
文件内容显示:
第一次写成\t了,实际上显示的是每个名字之间是空格
第二次修改成\t,显示就是第一次和第二次的内容在一起了↓
正确的操作应该是:
覆盖第一次用w,然后修改成增加a,应该有两次,或者直接修改原来文件中的部分,
但这又涉及到,如果需要修改程序,但是原来程序已有的数据如何修改的问题,还挺麻烦的
那么,日常工作中遇到这个情况的更改思路是什么呢?尤其是数据多的时候???
练习10-5:调查 编写一个while循环,询问用户为何喜欢编程。每当用户输入一个原因后,都将其添加到一个存储所有原因的文件中。
while True:prompt = "请问您为什么喜欢编程呢?请写下原因"reason = input(prompt)filename = '10_5_guest_reason.txt'with open(filename,'a') as file_object:file_object.write(f"{reason}\n")
1.注意写好\n保持结果清晰
2.如果全部的询问储存在一个结果中,可以是单独的问题,也可以是以字典形式存在book中,用户储存文件和前端可以看的文件就不同了,云计算是否相当于把文件直接存在云端,如果存在云端,显示形式还是txt的样子吗?不太懂,可能以后能知道。