python - 如何从python中的输入添加字典中键的值
问题描述
我对python很陌生,正在尝试找出一种从输入中访问字典的方法,然后在字典中添加相似键的值,然后通过添加这些相似的键值打印结果值。我现在的坏代码是:
p = {
"charge" : 1,
"energy": 938,
"spin": 1/2,
}
n = {
"charge" : 0,
"energy": 940,
"spin": 1/2,
}
e = {
"charge": -1,
"energy": 0.511,
"spin": 1/2,
}
x = input("First particle:")
y = input("Second particle:")
tcharge = x.get("charge")+y.get("charge")
tenergy = x.get("energy")+y.get("energy")
tspin = x.get("spin")+y.get("spin")
print(tcharge)
print(tenergy)
print(tspin)
解决方案
使用字典来存储粒子的名称及其描述。您的输入是字符串,因此字典的键应该是字符串。字典中的值是您创建的字典:
particle = {}
particle['p'] = {
"charge" : 1,
"energy": 938,
"spin": 1/2,
}
particle['n'] = {
"charge" : 0,
"energy": 940,
"spin": 1/2,
}
particle['e'] = {
"charge": -1,
"energy": 0.511,
"spin": 1/2,
}
x = input("First particle:")
y = input("Second particle:")
tcharge = particle[x]['charge'] + particle[y]['charge']
tenergy = particle[x]['energy'] + particle[y]['energy']
tspin = particle[x]['spin'] + particle[y]['spin']
print(tcharge)
print(tenergy)
print(tspin)
推荐阅读
- android - 一次性读取 Firebase Cloud (Dart/Flutter)
- google-chrome - WebBluetooth GATT Characteric Notification Setup too slow - 如何提高设置时间?
- flash - 如何让 Adobe Flash 在每个网络浏览器上运行
- reactjs - 为什么我的反应应用程序登录后没有重定向到主页?
- anaconda - Anaconda - 无法改变活动环境
- python - MacOS Catalina下无法安装python twint包
- mysql - 根据 LIKE 运算符从一个表中删除到另一个表
- python - 在 Pandas 中排列借方和贷方?
- optimization - 优化 google api 请求以从 youtube 视频中检索数据
- python - 合并两个只有一列不同的数据框。需要将该列附加到新数据框中。请查看下面的详细视图