如何只打印一次列表中的项目(Python 2.7)



我是 Python 的初学者,我制作了一个代码来打印用户输入的产品列表,但每当我打印它时,它都不会在到达最后一个元素时中断......
编辑:字符串应该没有空格。例如:白软干酪,奶酪,培根
这是我的代码:

def menu():
    print "1. View products"
def view(products):
    print products
def main():
    str1 = raw_input("")
    products =str1.split(',')
    menu()
    choice = input("")
    while (choice != 0):
        if(choice == 1):
            view(products)
main()

你有一个无限循环,这就是为什么列表不断被打印的原因。您需要多次请求输入,否则循环将永远不会结束

choice = None
while (choice != 0) and (choice != 1):
    if(choice == 1):
        view(products)
    choice = input("Type 1 to view products, 0 to quit: ")

在此代码中,您只打印列表,在这种情况下生成无限循环。在您的示例产品中是一个列表。那么为什么不把它传递给查看函数,然后传递给for循环来打印产品的内容

最新更新