<p>我在一门课程中做了一些Python的代码,我遇到了一个无法结束的循环问题。我不知道它是从哪里来的。你知道吗</p>
<p>我试着把每一个“elif”都打断一下,但那不是我想要的,因为我不想它就在“else”之后结束。不过,我不介意其他的选择。你知道吗</p>
<p>我也试过使用“return”,但也许我做错了什么,因为我不能让它工作</p>
<pre><code>from lxml import etree
doc = etree.parse('Paises_XML.xml')
raiz=doc.getroot()
paises=doc.findall("pais")
print("DATOS SOBRE HABITANTES EN CADA PAIS")
print("""
1- España
2- Irán
3- Alemania
4- EEUU
5- Libano
6- Madagascar
7- Salir
""")
eleccion=input("Introduzca un número referente a un país de la lista observable: ")
while True:
if eleccion== "1":
print("")
print (paises[0].find("nombre").text)
print (paises[0].find("habitantes").text)
elif eleccion== "2":
print("")
print (paises[1].find("nombre").text)
print (paises[1].find("habitantes").text)
elif eleccion== "3":
print("")
print (paises[2].find("nombre").text)
print (paises[2].find("habitantes").text)
elif eleccion== "4":
print("")
print (paises[3].find("nombre").text)
print (paises[3].find("habitantes").text)
elif eleccion== "5":
print("")
print (paises[4].find("nombre").text)
print (paises[4].find("habitantes").text)
elif eleccion== "6":
print("")
print (paises[5].find("nombre").text)
print (paises[5].find("habitantes").text)
elif eleccion== "7":
print("")
print("¡Hasta pronto!")
break
else:
print ("Opción no válida, elija un número del 1 al 6 para mostrar la información del país correspondiente")
</code></pre>
<p>我只是希望它不会做一个循环,我觉得其他的都很酷。
我还想实现一个选项,它可以显示我正在执行的每个查询,比如将它们全部收集到一个查询中,但我认为这就是创建循环的原因,所以我删除了它。你知道吗</p>