使用存储在“travel_plans.txt”中的数据创建一个名为destination的列表。列表的每个元素都应该包含文件中的一行,该行列出一个国家和该国境内的城市
“travel_plans.txt”包含:
This summer I will be travelling.
I will go to...
Italy: Rome
Greece: Athens
England: London, Manchester
France: Paris, Nice, Lyon
Spain: Madrid, Barcelona, Granada
Austria: Vienna
I will probably not even want to come back!
However, I wonder how I will get by with all the different languages.
I only know English!
到目前为止,我已经写了以下内容:
with open("travel_plans.txt","r") as fileref:
for line in fileref:
row = line.strip().split()
if ":" in row[0]:
destination = row
print(destination)
有没有更好的方法获得相同的输出
公认的答案很好。我有一些其他的建议,因为你正在学习
首先,您可以考虑稍微多的Python(通常指的是“可读”)方法,它可以包括将此分解为多个函数。
上面的第二行称为“docstring”。它向代码的其他读者解释代码的作用(包括提醒未来的您)
然后,处理这些行的函数:
以及处理文件的功能:
第二个建议:写一个测试。要测试脚本,请将其包含在.py文件的底部(我们称此文件为“模块”):
通过在与脚本(和测试文件)相同的目录中打开命令行并运行此命令来运行它,其中“myapp”是.py文件的名称:
最后一点注意:编写测试的更好方法是使用assert语句,而不是使用
print
函数如果这些断言语句中的任何一个产生了
AssertionError
,那么您就知道您编写的代码正在做您不希望它做的事情学习编写好的测试,这样你就知道你的代码正在做你想让它做的事情,这是一个很好的习惯
对于一个小文件来说,任何比这更多的东西都可能是一种过度杀伤力
你可以把它做得更短
相关问题 更多 >
编程相关推荐