使用循环扩展程序以处理多行输入



我是编程新手,目前在学校。我在分配中遇到问题,我需要为多个输入创建一个循环,直到用户输入 q 结束。现在这个问题作为一个整体作业已经问过了,之前已经链接到这里试图敲定这个 zylabs 实验室,但挣扎着,我一直在按照@Splatmistro列表完成大部分作业。但是,我只需要帮助来了解我的代码中缺少什么即可正常工作。

input_comma = input('Enter input string: n')
**if input_comma != 'q':**
    while ',' not in input_comma:
        print('Error: No comma in string.')
        input_comma = input()
        print('Enter input string: ')
split_input = input_comma.split(',')
print('First word:',split_input[0].strip())
print('Second word:',split_input[1].strip())

我知道我需要在 while 语句之前有一个 IF 语句,但我拥有的那个似乎不起作用。我知道我错过了一些东西,但我就是想不通。任何帮助将不胜感激。

已编辑:这是我正在处理的代码的预期输出。

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

我的代码将正确获取并打印第一个输入,但它不会继续循环第二个、第三个或第四个输入。这就是我寻求帮助的。

不要使用

if 语句,而是使用另一个 while 循环,如下所示:

input_comma = input('Enter input string: n')
while input_comma != "q":
    while "," not in input_comma:
        print('Error: No comma in string.')
        input_comma = input()
        print('Enter input string: ')
    split_input = input_comma.split(',')
    print('First word:',split_input[0].strip())
    print('Second word:',split_input[1].strip())
    input_comma = input('Enter input string: n')

请注意,我还缩进了最后三行...这使得程序根据您提供的示例帖子工作。

固定代码:

input_comma = input('Enter input string:n')
while input_comma != "q":
    while "," not in input_comma:
        print('Error: No comma in string.n')
        input_comma = input()
        print('Enter input string:')
    split_input = input_comma.split(',')
    print('First word:',split_input[0].strip())
    print('Second word:',split_input[1].strip())
    input_comma = input("n"'Enter input string:n')

最新更新