我有这个提示:
你必须做化学作业,但你讨厌抬头 元素周期表上的元素!编写一个名为的程序 标准输入和元素的元素(作为字符串,独立于大小写) 将表示其原子量的double打印到标准输出。 只实施前三个元素的程序,hydrogren, 氦和锂,其原子量分别为1.008, 4.0026和6.94。如果有任何其他内容作为输入,请打印声明"抱歉,我不认识那个元素!"
我写了一段代码,但结果却出错了。它输入的内容并不重要,它总是出错。标准输出保持声明"输入元素名称:"以及原子量数
这是我写的:
hydrogen = 1.008
helium = 4.0026
lithium = 6.94
atomic_weight = input("Enter element name:").lower()
if atomic_weight == hydrogen:
print(hydrogen)
elif atomic_weight == helium:
print(helium)
elif atomic_weight == lithium:
print(lithium)
else:
print("Sorry, I don't recognize that element!")
更新了代码
hydrogen = 1.008
helium = 4.0026
lithium = 6.94
element_name = input("Enter element name:").lower()
if element_name == hydrogen:
print(hydrogen)
elif element_name == helium:
print(helium)
elif element_name == lithium:
print(lithium)
else:
print("Sorry, I don't recognize that element!")
答案 0 :(得分:4)
您将输入与原子量进行比较。您可能希望将其与字符串进行比较,例如"hydrogen"
,"helium"
和"lithium"
。
答案 1 :(得分:1)
我终于明白了,输入应该是空的
hy = 1.008
he = 4.0026
li = 6.94
element_name = input("").lower()
if element_name == "hydrogen":
print(hy)
elif element_name == "helium":
print(he)
elif element_name == "lithium":
print(li)
else:
print("Sorry, I don't recognize that element!")
答案 2 :(得分:0)
如果您尝试使用名称
尝试访问原子量,则可能需要字典elements = {'hydrogen': 1.008,
'helium': 4.0026,
'lithium': 6.94}
name = input("Enter element name:").lower()
print(elements.get(name, 'element not found!'))
答案 3 :(得分:0)
感谢上面分享的所有人,写了我的版本并且它有效(我的第一个堆栈溢出帖子):
hydrogen = 1.008
helium = 4.0026
lithium = 6.94
element_name = input()
name=element_name.lower()
if name == "hydrogen":
print(hydrogen)
elif name == "helium":
print(helium)
elif name == "lithium":
print(lithium)
else:
print("Sorry, I don't recognize that element!")