电脑网络 手机数码 生活 游戏 体育运动 明星影音 休闲爱好 文化艺术 就业职场 教育科学 健康医疗 商业理财 情感家庭 地区 其他

请问大佬们,为什么我python运行程序特别慢啊,我这个程序怎么改一下可以运行的更快呢?

2023-10-25 02:30:48

我写了这个记录文本词条次数的程序,去除掉了停用词,停用词列表包含了500多个词foriinrange(20):Path=path+text+str(i)+.txtwithopen(Path,r,encoding=utf-8,errors=ignore... 我写了这个记录文本词条次数的程序,去除掉了停用词,停用词列表包含了500多个词
for i in range(20):
Path=path+text+str(i)+.txt
with open(Path,r,encoding=utf-8,errors=ignore) as text:
words = ***.read().split()
time={}
for word in words:
if word not in stopwords:
time[word]=words.count(word)
times.append(time)
pickle.dump(times, open(zong+time.txt, wb))
处理器I7-6700HQ 2.6GHZ
其中一共读取了20个TXT文件,文件全是英文和标点符号,文件加起来一共才36M,我将停用词以外的词条使用次数放在了字典里,20个字典组成了一个列表,运行这个程序竟然用了四个小时,请问大佬们有什么可以改进的吗 展开

好评回答
您好,茫茫人海之中,能为君排忧解难实属朕的荣幸,在下拙见,若有错误,还望见谅!。展开全
yxhtest7772017-07-18

关注

分享

697  2

python运行速度慢怎么办?6个Python性能优化技巧



Python是一门非常酷的语言,因为很少的Python代码可以在短时间内做很多事情,并且,Python很容易就能支持多任务和多重处理。

Python的批评者声称Python性能低效、执行缓慢,但实际上并非如此:尝试以下6个小技巧,可以加快Python应用程序。

关键代码可以依赖于扩展包

Python使许多编程任务变得简单,但是对于很关键的任务并不总是提供最好的性能。使用C、C++或者机器语言扩展包来执行关键任务能极大改善性能。这些包是依赖于平台的,也就是说,你必须使用特定的、与你使用的平台相关的包。简而言之,该解决方案提供了一些应用程序的可移植性,以换取性能,您可以获得只有通过直接向底层主机编程。

下面这些扩展包你可以考虑添加到你的个人扩展库中:

Cython

PyInlne

PyPy

Pyrex

这些包有不同的作用和执行方式。例如,Pyrex 让Python处理一些内存任务变得简单高效;PyInline可以直接让你在Python应用程序中使用C代码,虽然内联代码被单独编译,但是如果你能高效的利用C代码,它可以在同一个地方处理每一件事情。

使用关键字排序

有很多古老的Python代码在执行时将花费额外的时间去创建一个自定义的排序函数。最好的排序方式是使用关键字和默认的sort()方法。

优化循环

每一种编程语言都强调循环语句的优化,Python也是一样的。尽管你可以依赖于丰富的技术让循环运行的更快,然而,开发者经常忽略的一个方法是避免在循环内部使用点拼接字符串。

使用新版本

任何一个在线上搜索Python资料的人都会发现无数关于Python版本迁移的信息。通常,Python每一个版本都针对之前的一个版本做了优化和改进,以让Python运行的更快。限制因素是你喜欢的函数库是否也针对Python的新版本做了改进。

当你使用了新的函数库,获得了Python的新版本,你需要保证代码依然能够运行,检查应用,修正差异。然后,如果你仅仅是非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
© 融合问答