时间函数的无模糊方法
just-time-it的Python项目详细描述
justtimeit.py
在项目中没有足够的依赖性来处理糟糕的文档?对重要函数有更坏的代码的永恒渴望吗?喝水吃谷类食品或者只是一个全面的受虐狂(开玩笑,我们都是程序员,都是受虐狂)
孩子,我有解决办法给你吗。
更疼我爸爸
懒得用这个来包装你的功能?
importtimestarttime=time.time()defshakyRelationship(Wallet):whileTrue:ifWallet=="empty":breakelifWallet=="thicc":# stop lying to yourselfbreakreturn"big sad"YourWallet="empty"result=shakyRelationship(YourWallet)print(time.time()-starttime)>>>1.0940176924541224e-06
现在你可以这样包装了
fromtimefunctionsimporttimefuncMyWallet="thicc"result=timefunc("shakyRelationship(MyWallet)",globals=globals())# Only include globals() if you have variables>>>TimeTakenforyourfunction:1.0940176924541224e-06.Repeated1time(s).
这个包不能保存你的关系,但它可以保存你的3秒。
现在你可以花更多的时间去学习Tensorflow来完成这个有趣的python未审查项目
要求
Python3.6+。有比Python3.6大的吗?你要么在公司工作(见:FAQ),要么是受虐狂(见:Support/Personal Issues)
安装
pipinstalljust-time-it
快速启动/文档
让我们定义一个示例函数
defmultiply(x,y):returnx*y
printr=0(默认值)
打印不带参数的函数名
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)")>>>TimeTakenformultiply:1.0940176924541224e-06.Repeated1time(s).
打印器=1
打印带参数的函数名
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)",printr=1)>>>TimeTakenformultiply(3,5):1.0940176924541224e-06.Repeated1time(s).
打印器=2
不打印任何内容
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)",printr=2)>>>
returnr=0(默认值)
返回函数的结果
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)")print(result)>>>TimeTakenformultiply(3,5):1.0940176924541224e-06.Repeated1time(s).>>>15
返回率=1
返回函数完成所需的时间
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)",returnr=1)print(result)>>>TimeTakenformultiply(3,5):1.0940176924541224e-06.Repeated1time(s).>>>1.0940176924541224e-06
返回率=2
返回结果和所用时间
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)",returnr=2)print(result)>>>TimeTakenformultiply(3,5):1.0940176924541224e-06.Repeated1time(s).>>>(1.0940176924541224e-06,15)
returnr=2,printr=2
返回结果和所用时间,不打印任何内容
fromtimefunctionsimporttimefuncresult=timefunc("multiply(3,5)",printr=2,returnr=2)print(result)>>>(1.0940176924541224e-06,15)
全球
有变量吗?使用globals=globals()
fromtimefunctionsimporttimefuncx=3y=5result=timefunc("multiply(x,y)",globals=globals())print(result)>>>TimeTakenformultiply(x,y):1.0940176924541224e-06.Repeated1time(s).
技术
py使用面向对象、动态编程、增强现实、机器学习、人工神经网络、gpt-2和我的大数据来确保您节省3秒。
测试
好笑
支架
对于技术问题:www.stackoverflow.com
对于个人问题:听起来像你自己的个人问题,让我们保持这样
常见问题解答
Should I use this?
不,这是世界上最糟糕的语言组合。
Can I change the README to be more professional?
如果您尝试,我会将整个文件通过owo生成器
I'm a born masochist, I still use Python2.3. Will there be support for Python3.5 or other earlier depreciated versions?
如果我想用兼容性问题折磨自己,那我还是去约会吧。
警告/警告(严重)
此代码不准确您正在测试的任何低于0.1秒的函数都不应依赖于此包在不同的代码下,执行大约0.9秒的普通函数将如下所示
示例慢代码
# Around 0.9 seconds to rundefmultiply(x,y):fordinrange(10000000):xy=d*x*yreturnNone
正常时间.time()
starttime=time.time()multiply(3,7)print("time.time()",(time.time()-starttime))>>>time.time()0.8946394920349121
设置时间
print("timesetup",timeit.timeit("multiply(3,7)",setup="from /__main__ import multiply",number=ss))>>>timesetup0.9034562206940011
timefunc(本包)
timefunc("multiply(3,7)")>>>TimeTakenformultiply:0.84726418995648.Repeated1time(s).<>它们大致相似,最多有0.1个差异。您可以尝试更改范围(10000000)以查看代码中的差异。
许可证
glwt(祝您好运)公共许可证