Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在使用读取文件时减少CPU使用_Python - Fatal编程技术网

Python 在使用读取文件时减少CPU使用

Python 在使用读取文件时减少CPU使用,python,Python,这就是我的想法,在我的项目背后,玩弄hashlib模块,当用户输入一个散列时,所有的大小写组合都会尝试寻找是否匹配,一切都很好,效果很好,唯一的问题是CPU使用率,高达50%-60%。。无论如何,有没有办法减少cpu的使用 操作系统:Windows 守则的一部分: def md5(file, torev): with open(file) as f: for i in f: i = i.replace("\n", "") s

这就是我的想法,在我的项目背后,玩弄hashlib模块,当用户输入一个散列时,所有的大小写组合都会尝试寻找是否匹配,一切都很好,效果很好,唯一的问题是CPU使用率,高达50%-60%。。无论如何,有没有办法减少cpu的使用

操作系统:Windows

守则的一部分:

def md5(file, torev):
    with open(file) as f:
        for i in f:
            i = i.replace("\n", "")
            s = map(''.join, itertools.product(*zip(i.upper(), i.lower())))
            for k in s:
                rev = hashlib.md5(k).hexdigest()
                if rev == torev:
                   print "[+] Hash Value Found"
                   print "[+] Value: "+k
                   break

谢谢

在这种情况下,减少CPU使用量的唯一方法是将哈希计算从CPU上移开,也许可以移到带有OpenCV/OpenCL的GPU上。

我建议使用
imap
izip
那么有什么意义呢?哈希计算显然受到CPU的限制。你的观点是?@jamylak:但这些实际上不会显著降低CPU使用率,只会降低内存使用率。imap、izip在这里做了什么?@IgnacioVazquez Abrams刚刚发表评论,因为这不是答案。它们的内存效率更高,因为
map
zip
返回
列表
,而
izip
imap
是生成器,您将只运行一次组合,而不是两次组合