【问题标题】:blank or empty line from input function in pythonpython中输入函数的空白或空行
【发布时间】:2020-06-22 23:15:33
【问题描述】:

我有一个问题。当用户没有输入值并直接按回车时,我如何告诉程序结束?

name=("")
while(name !=  '\n'):
    print( 'Enter first and last name: ')
    name=input().lower()
    if(name !=  '\n'):
        print(name)
    else:
        print("terminado")
        break

【问题讨论】:

    标签: python loops input while-loop enter


    【解决方案1】:

    检查name的值,当你按回车找出:

    >>> name = input('Name? ')
    Name? Mark
    >>> name
    'Mark'
    >>> name = input('Name? ')
    Name?
    >>> name
    ''
    

    新行不包含在输入中。

    另外,如果name 不是空字符串,则if name:True,所以:

    while True:
        name = input('Name? ')
        if name:
            print(name)
        else:
            print('Done')
            break
    
    Name? Mark
    Mark
    Name? Joe
    Joe
    Name? John
    John
    Name?
    Done
    

    【讨论】:

      【解决方案2】:

      这应该也可以:

      while True:
        name = input('Enter first and last name:').lower()
        if not name:
           break
        print("name: %s" % name)
      print("terminado")
      

      只要用户没有按“Enter”并且确实输入了名称,就会打印该名称,但是如果“Enter”表示基本上返回一个空字符串"",那么它将返回terminado .

      【讨论】:

        猜你喜欢
        • 2020-06-17
        • 2019-02-13
        • 1970-01-01
        • 2014-12-21
        • 1970-01-01
        • 1970-01-01
        • 2020-02-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多