关于python:用户输入的持续时间

Time duration of user input

我想知道用户输入我用raw_input()记录的输入需要多长时间。
即 是否需要1秒或10秒才能在命令行输入内容。

是否有既定的方法,或者我需要发明自己的方式吗?


如果你只需要第二个分辨率(不是毫秒/微秒),你可以用time.time()包围代码来获得开始/结束时间,然后减去。

1
2
3
4
5
6
7
import time

start = time.time()
in_str = raw_input("Enter the thing:")
end = time.time()
elapsed = end-start
print"That took you" + str(elapsed) +" seconds. Man, you're slow."

如果你想要更高的分辨率,请看一下这里给出的代码:python time(milli seconds)计算


您也可以使用timeit模块。

1
2
3
4
5
6
7
8
9
10
11
12
13
import timeit

def read_input():
    global in_str
    in_str = raw_input('Enter text: ')

in_str = ''

s = total_time = timeit.timeit('read_input()', number=1,
                               setup='from __main__ import read_input')

print(in_str)
print(s)

s将在几秒钟内完成,但它在Windows上具有微秒粒度,在Linux上具有1/60秒。


您可以在输入之前和之后使用time.time(),然后只需要区别。 答案将在几秒钟内完成。

1
2
3
4
5
6
7
8
>>> import time
>>> t1 = time.time()
>>> s = raw_input("enter something")
hello
>>> t2 = time.time()
>>> enter_time = t2-t1
>>> enter_time
17.92899990081787

你可以使用time.time()来达到这个目的

1
2
3
4
import time
start=time.time()
inp=raw_input(" enter the input")
print start-time.time()