【问题标题】:Contiuesly running input defined function继续运行输入定义的函数
【发布时间】:2023-01-31 00:23:00
【问题描述】:

我怎样才能让我的代码持续运行并不断询问用户输入以及每次打印输入 注意:while true 我得到错误 EOFerror

 
 i = input()
 b = int(i,2)
    
 print (b)

【问题讨论】:

  • 将函数体包装在 while True 循环中。您还应该阅读 Python 教程。这是最基本的。没有必要在像循环这样简单的事情上发帖求助。
  • 也许你需要先变得友善,然后我编辑了我的帖子,因为我已经尝试过循环但没有用
  • 如果您在等待输入时键入 Ctrl-D,您将得到 EOFError
  • @FirasBayazed 好吧,如果您不向input() 函数提供输入,您当然会得到eof。您需要决定要如何退出循环。要么提供一些像"quit"这样的特殊字符串来退出,要么捕获eof错误并抑制它,安静地退出。一旦你学会了基础知识,你就可以做任何你想做的事。

标签: python


【解决方案1】:

您可以像这样使用 Ctrl-D 终止交互式输入:

while True:
    try:
        n = input('Enter a binary number or Ctrl-D to end: ')
        x = int(n, 2)
        print(f'{n} = {x}')
    except EOFError:
        break
    except ValueError as e:
        print(e)

【讨论】:

  • 谢谢,实际上我只是想用我的智能手机练习二进制计数,所有二进制计算器应用程序一开始都不接受零,这就是我决定编写自己的代码的原因,所以谢谢它的工作⚘️
【解决方案2】:

您可以将您的块置于循环下,如下所示:

while True:
  c()

或者像那样:

def c():
  while True:
    i = input()
    b = int(i, 2)
    print(b)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-02
    • 2017-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多