loops - 尝试将姓名和年龄写入文本文件
问题描述
我不知道如何,但似乎我的年龄在 while 循环中不断混淆。它也不包括其中一个名称。该循环在 IDE 中工作,但我无法将其正确写入文本文件。
def main():
friendsfile = open('friends.txt', 'w')
name = str(input('Enter first name of friend or Enter to quit : '))
while name != '':
age = int(input('Enter age of this friend : '))
name = str(input('Enter first name of friend or Enter to quit : '))
friendsfile.write(name + '\n')
friendsfile.write(str(age) + '\n')
friendsfile.close()
print('File was created')
主要的()
当我输入 13 岁的 Justin、20 岁的 Scott 和 14 岁的 Lucy 的名字时,我将其写入文件。
斯科特 13 露西 20
14
解决方案
问题是name
变量在您打印之前得到更新。这应该有效:
while name != '':
age = int(input('Enter age of this friend : '))
friendsfile.write(name + '\n')
friendsfile.write(str(age) + '\n')
name = str(input('Enter first name of friend or Enter to quit : '))
推荐阅读
- rust - 在字符串字符 for 循环中使用可变或不可变引用
- amazon-web-services - 您是否需要为访问 AWS Cost Explorer 控制面板付费?
- r - R统计,面板数据和NA:使用面板数据将向量中的NA值替换为另一个向量中的特定行
- css - 在模态(Materializecss)内部时选择隐藏的下拉列表
- docker - Jupyterhub + DockerSpawner:Authenticator.pre_spawn_start 中的错误:APIError 400 客户端错误:错误请求(“无效标签格式”)
- java - Spring Framework - JDBC 登录
- python - 如何使用 Twitter 的标准 API 每天每次查询获得超过 100 条不同的记录?
- javascript - NodeJs:- 从第一个下拉列表中获取值并动态填充第二个下拉列表中的值
- arrays - 将 JSON 数组输出打印到 Google 表格
- python - 我不明白为什么完整的字符串变量没有显示它应该显示的响应消息