我想知道用户输入我用raw_input()录制的输入需要多长时间。
即是否需要1秒或10秒才能在命令行输入内容。
是否有既定的方法,或者我需要发明自己的方式吗?
答案 0 :(得分:4)
如果您只需要第二个分辨率(非毫秒/微秒),则可以使用time.time()
包围代码以获取开始/结束时间,然后减去。
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) calculation
答案 1 :(得分:1)
您也可以使用timeit
模块。
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秒。
答案 2 :(得分:0)
你可以为此目的使用time.time()
import time
start=time.time()
inp=raw_input(" enter the input")
print start-time.time()
答案 3 :(得分:0)
您可以在输入之前和之后使用time.time()
,然后只是区别对待。答案将在几秒钟内完成。
>>> import time
>>> t1 = time.time()
>>> s = raw_input("enter something")
hello
>>> t2 = time.time()
>>> enter_time = t2-t1
>>> enter_time
17.92899990081787