python - Cython - 是什么让我的程序变慢以及如何加快速度?
问题描述
我正在尝试加快我的 cython 程序,但我添加的所有内容都出现错误。有谁知道我能做什么?
这是代码:
cpdef char breaker(str a):
cdef list strings = list("abcčćdđefghijklmnoprsštuvzžqwxy1234567890ABCČĆDĐEFGHIJKLMNOPRSŠTUVZŽQWXY")
cdef int i
cdef int b = 0
cdef str string1, string2, string3, string4, string5, string6, string7, string8
cdef str password
for i in range(len(strings)):
string1 = strings[i]
for i in range(len(strings)):
string2 = strings[i]
for i in range(len(strings)):
string3 = strings[i]
for i in range(len(strings)):
string4 = strings[i]
for i in range(len(strings)):
string5 = strings[i]
for i in range(len(strings)):
string6 = strings[i]
for i in range(len(strings)):
string7 = strings[i]
for i in range(len(strings)):
string8 = strings[i]
output = string1 + string2 +string3 + string4 + string5 + string6 + string7 + string8
if a == output:
password = output
quit()
if b >= 100000:
b = 0
print(output)
else:
b += 1
return password
print(output)
不是必需的线路,请让我知道这是否会减慢程序的速度。这是 html 文件的图像,显示了程序的哪些部分较慢(黄线)和哪些部分较快(白线):
https://i.stack.imgur.com/dLn88.png
我是 cython 的新手,这个程序只是测试未来更大的项目。感谢高级!
解决方案
你是暴力破解 72^8 = 722204136308736 密码组合。它注定要花点时间。
(另外请不要对所有嵌套循环使用相同的迭代器“i”)
推荐阅读
- angular - 向上而不是向下打开 Angular 菜单的 Kendo UI
- c++ - 我应该如何阅读单词并将它们放入 C++ 中的向量中?
- c# - ID 不匹配时返回错误请求
- php - 如何将安装错误返回到 Prestashop 1.7 中的模块管理器?
- django - 另一个语句中的 Django 中的链接过滤器
- html - 从“li”元素中选择所有后代元素,嵌套的“li”元素除外
- amazon-web-services - 通过 AWS QuickSight 使用 AWS Athena 的查询结果是否存储在 S3 中?
- r - 如何从excel转置输入变量?
- python - 如何加快 pandas 将数据帧保存到 csv 的速度?
- firebase - Flutter Firebase全局自动增量值并在文档字段dart中检索