在Python中,我在程序中执行了许多不同的字符串处理函数。用户在表单中输入术语,并通过不同的功能处理该术语。这些包括,阻止,停止删除单词,删除标点符号,拼写检查和获取同义词。
进行词干分析停止词语&使用string.replace()
和REGEX
,
使用pyEnchant进行拼写检查
使用Big Huge Thesaurus API获取同义词。
该术语被发送到API。返回结果并通过硬编码排序过程。毕竟,结果输出给用户。整个过程需要10秒以上,这太长了。我想知道我是否使用了许多扩展,从而导入它们,导致长时间的延迟。
希望这不符合stackoverflow规则,但我是python的新手,这是我需要知道的事情。
答案 0 :(得分:4)
我想知道我是否使用了很多扩展,从而导入了这些扩展,导致了长时间的延迟。
非常不可能。如果你只导入一次,然后调用循环,循环应该占用大部分时间。 (或者每个单词/句子启动一个Python进程?)
根据经验,计算机程序倾向于花费90%的时间执行10%的代码。那部分值得优化。像import语句这样的东西通常不是。要了解您的计划花费时间的位置,请使用分析器。
答案 1 :(得分:1)
每次检查所花费的时间。然后比较结果,看看实际花费的时间是多少。
import time
start = time.time()
#after the individual piece has completed
end = time.time()
print (end - start, "seconds")
实际上知道字符串处理的每个组件需要多长时间才会很有趣。