首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python:防错循环

python:防错循环
EN

Stack Overflow用户
提问于 2014-12-27 17:14:04
回答 1查看 233关注 0票数 0

假设你有一种情况,你想运行一个函数,然后询问用户他们是否想要重新运行该函数。如果用户选择重新运行该函数,它将重新运行,然后系统将再次询问用户是否要重新运行该函数。只要用户说是,这个过程就会无限地继续下去,如果用户说否,这个过程就会终止。例如:

代码语言:javascript
复制
def random_function():
    print('the function ran.')

random_function()

random_function()
re_run = input('Re-run random_function? y/n: ')

while ans != 'n' and ans == 'y':
    random_function()
    re_run = input('Re-run random_function? y/n: ')

print('The program will now close.')

在这里,用户应该只输入'y‘或'n’。但是,如果用户输入的不是'y‘或'n',我想返回一条消息,说明只有'y’或'n‘是可接受的输入,然后提示他们重新输入他们的响应。我知道我应该使用异常,但我在弄清楚如何使用它们时遇到了麻烦。有没有人能说点什么呢?

EN

回答 1

Stack Overflow用户

发布于 2014-12-27 19:13:49

您不需要使用异常,请参阅下面的代码。

代码语言:javascript
复制
def random_function():
    print 'the function ran.'


    flag=1
    while True:

        if flag:
            random_function()
        re_run = raw_input('Re-run random_function? y/n: ')
        if re_run != 'y' and re_run != 'n':
             print 'Pease use only y or n input'
             flag = 0
        elif re_run == 'n':
             break
        elif re_run == 'y' :
             flag = 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27665886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档