我正在做一些家庭作业,并且受命创建一个简单的程序,
它必须完全按照要求发出,而我目前正在这样做。我只是想不出如何循环回提示并获得不同的输入,而不是无限循环或从不实际使用新输入。
完成后,输出应该是这样:
Enter input string:
Jill, Allen
First word: Jill
Second word: Allen
Enter input string:
Golden , Monkey
First word: Golden
Second word: Monkey
Enter input string:
Washington,DC
First word: Washington
Second word: DC
Enter input string:
q
我可以通过第一个条目获取它,并使用“ q”退出它,但是无法获取它再次提示用户并获得其他输入。
这是我的代码:
def strSplit(usrStr):
while "," not in usrStr:
print("Error: No comma in string.\n")
usrStr = input("Enter input string:\n")
else:
strLst = usrStr.split(",")
print("First word: %s" % strLst[0].strip())
print("Second word: %s\n" % strLst[1].strip())
usrStr = input("Enter input string:\n")
while usrStr != 'q':
strSplit(usrStr)
break
任何帮助都是太棒了!谢谢。
答案 0 :(得分:2)
您快到了。试试这个:
while True:
usrStr = input("Enter input string:\n")
if usrStr == 'q':
break
if "," not in usrStr:
print("Error: No comma in string.\n")
else:
strLst = usrStr.split(",")
print("First word: %s" % strLst[0].strip())
print("Second word: %s\n" % strLst[1].strip())
当然,您仍然可以对strSplit
函数进行一些修改:
def strSplit(usrStr):
if "," not in usrStr:
print("Error: No comma in string.\n")
else:
strLst = usrStr.split(",")
print("First word: %s" % strLst[0].strip())
print("Second word: %s\n" % strLst[1].strip())
while True:
usrStr = input("Enter input string:\n")
if usrStr == 'q':
break
strSplit(usrStr)