Tur*_*rbo 3 python for-loop python-3.x
我正在编写一个程序,一直要求用户输入名称,直到输入单词END,此时它会打印出名称列表.
代码:
import getpass
import time
import sys
print("Welcome " + getpass.getuser() + "...")
time.sleep(0.25)
print("This program, powered by Python, it will ask you to enter names...")
time.sleep(0.5)
print("...once you have finished, enter END to print off your list")
names = []
for i in names:
name = input("Please enter a name: ")
if name == "END":
print(names)
sys.exit()
names.append(name)
Run Code Online (Sandbox Code Playgroud)
问题是程序在尝试执行for循环之前退出.
为什么会发生这种情况,我该如何解决?
K D*_*awG 10
之所以发生这种情况,是因为变量names是空的,因此无需迭代
所以使用while循环代替:
while True:
name = input("Please enter a name: ")
if name == "END":
print(names)
break
names.append(name)
Run Code Online (Sandbox Code Playgroud)
注意:要退出循环使用break而不是sys.exit()毕竟:
简单比复杂更好
| 归档时间: |
|
| 查看次数: |
1870 次 |
| 最近记录: |