我的程序可以很好地使用此程序检查周期表编号和元素的文件:
userline=input('Enter element number or element name: ')
userline=userline.capitalize()
f=open('periodic_table.txt')
while userline:
for line in f:
number,element=line.split()
但如果我在程序中添加这样的内容:
else:
print('Thats not an element!')
userline=input('Enter element number or element name: ')
userline=userline.capitalize()
它不断打印出一个元素,即使我们输入了正确的元素编号或名称
您当前的方法不起作用的原因是您正在遍历一个列表。如果执行
userline != element
,当您第一次遇到不等于用户输入的元素或数字时,程序将打印错误消息。既然你在循环遍历每一个周期表元素,你会得到一堆错误信息!你知道吗相反,首先尝试将每个周期表元素和数字添加到字典或列表中。这样,您就可以检查用户键入的内容是否在字典中,并返回一条错误消息,而不必遍历整个内容。你知道吗
下面是一个简短的示例,说明您可能想要尝试什么:
(警告:我没有尝试运行这个,所以您可能需要对它进行一些调整以确保它正常工作)
相关问题 更多 >
编程相关推荐