【发布时间】:2020-04-03 15:55:32
【问题描述】:
我正在尝试编写一个程序,该程序将接受用户的输入(在这种情况下,他们从列表中选择同位素),将其与列表进行匹配,然后打印同位素及其半衰期。这一切都很完美,除了我无法使用与 for 循环之外的输入匹配的半衰期。我尝试将它包含在一个函数中以返回结果,但我所做的一切似乎都不起作用。代码如下:
i=0
iso = list(["Oxygen-22", 2.25, "Carbon-15", 2.45, "Flevorium-289", 2.6, "Oxygen-21", 3.42, "Nitrogen-17", 4.17, "Beryllium-14", 4.84, "Nitrogen-16", 7.13, "Oxygen-20", 13.5, "Beryllium-11", 13.8, "Carbon-10", 19.3, "Oxygen-19", 26.5, "Dubnium-261", 27, "Seaborgium-266", 30, "Dubnium-262", 34]);
print("Please select from the below list of isotopes:");
while i < len(iso):
print iso[i];
i = i + 2;
def search(x,y):
u_iso = input("Enter selection:");
for x in range(len(iso)):
if u_iso == iso[x]:
y = x+1;
print("Isotope:",iso[x],"Half-life:", iso[y],"seconds");
else:
x=x+2;
if u_iso not in iso:
x=0;
u_iso = input("Enter selection again:");
if u_iso == iso[x]:
y = x+1;
print("Isotope:",iso[x],"Half-life:", iso[y],"seconds");
else:
x=x+2;
return x, y;
search(0,0);
print x,y;
【问题讨论】: