我想加快我的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.comdLn88.png。
我是个新手,这个程序只是为了将来更大的项目做测试。谢谢你的建议
你正在粗暴地强迫72^8 = 722204136308736密码组合。它一定会花点时间的。
(另外,请不要在所有的嵌套循环中使用同一个迭代器 "i")