在打印到屏幕时获取用户输入

时间:2016-03-02 18:45:27

标签: python multithreading input while-loop output

我想在打印到屏幕时获得用户输入。我研究了很多。但没有找到任何东西。我在Python中使用类编程并不是很先进,所以我不理解stackoverflow上的其他示例。

示例:

import time

def user_input():
    while True:
        raw_input("say smth: ")

def output():
    while True:
        time.sleep(3)
        print "hi"

input()
output()

即使输出正在打印“hi”,我也希望保留提示。我已经尝试了一个示例,但输入提示即使在while循环中也会消失。

1 个答案:

答案 0 :(得分:1)

首先,让我们回顾一下你的代码

import time

def user_input():
    while True:
        raw_input("say smth: ")

def output():
    while True:
        time.sleep(3)
        print "hi"

input()
output()

您正在调用input(),而这实际上并不是您的函数名称。它是user_input()。此外,一旦调用user_input()output()将永远不会被调用,因为while True中的user_input()条件始终为True,这意味着它永远不会退出函数外。

另外,如果你想用多线程做一些事情,但是你不懂Python中的类,你应该做一个与类相关的教程。

在多线程程序上查看其他StackOverflow Post