本篇内容主要讲解“python运行加速的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python运行加速的方法是什么”吧!
创新互联专业为企业提供青田网站建设、青田做网站、青田网站设计、青田网站制作等企业网站建设、网页设计与制作、青田企业网站模板建站服务,10余年青田做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
一、总结
1、使用pypy
2、减少函数化调用
3、减少文件的打开即with的调用,将这一调用放在for循环前面,然后传递至后面需要用到的地方
4、if函数判断条件多的尽量在前面
全面加速(pypy)
二、全面加速(pypy)
将python换为pypy,在纯python代码下,pypy的兼容性就不影响使用了,因为一些纯python的代码常常会用pypy进行一下加速
测试代码,for循环10000000次
start = time.time()
for i in range(10000000):
print(i,end="")
end = time.time()
print(f"耗费时间{end-start}秒>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")pypy的耗时为:

而python耗时为

大致三倍,但是循环越多估计越快,据说有6倍左右
二、减少文件的打开即with的调用
原代码的with在调用函数内,即每次调用函数都要打开并关闭文件,造成大量耗时
def BMES(word,tag):
with open(r"J:PyCharm项目学习进行中NLP教程NLP教程数据集词性标注
ature2ner.txt","a+",encoding="utf-8")as f_:
if len(word) == 1:
"""单字"""
f_.write(word + " " + f"S-{tag.upper()}" + "
")
else:
"""多字"""
for index, word_ in enumerate(word):
if index == 0:
f_.write(word_ + " " + f"B-{tag.upper()}" + "
")
elif 0 < index < len(word) - 1:
f_.write(word_ + " " + f"M-{tag.upper()}" + "
")
else:
f_.write(word_ + " " + f"E-{tag.upper()}" + "
")
#后续在多个if-elif-else中调用耗时为

tqdm预估时间在15~25个小时左右跳动
将with放在循环前面
如

将with的内容作为f_传递进来

后的耗时为:

测试如下:
import os, warnings,time,tqdm
def txt(word):
with open("ceshi.txt","a+",encoding="utf-8")as f:
if len(str(word))<=2:
word+=100
f.write(str(word)+"
")
elif 2>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>") 耗时结果为:

将文件的打开即with的调用放在外面
import os, warnings,time,tqdm def txt(f,word): if len(str(word))<=2: word+=100 f.write(str(word)+" ") elif 2>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")
耗时为

结论:快了119倍,而实际加速远远大于这个倍数
三、if判断靠前
如:
if tag in ["nts", "nto", "ntc", "ntcb", "ntcf", "ntch", "nth", "ntu", "nt"]: BMES(f_,i2, tag="ORG") elif tag in ["nb", "nba", "nbc", "nbp", "nf", "nm", "nmc", "nhm", "nh"]: BMES(f_,i2, tag="OBJ") elif tag in ["nnd", "nnt", "nn"]: BMES(f_,i2, tag="JOB") elif tag in ["nr", "nrf"]: BMES(f_,i2, tag="PER") elif tag in ["t"]: BMES(f_,i2, tag="TIME") elif tag in ["ns", "nsf"]: BMES(f_,i2, tag="LOC") else: for i3 in list(i2): f_.write(i3 + " " + f"O" + " ")
满足条件的可以先跳出判断
到此,相信大家对“python运行加速的方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
当前名称:python运行加速的方法是什么
分享地址:http://www.jxjierui.cn/article/psejhh.html


咨询
建站咨询
