我只是在弄乱我是否可以使用'crypt'模块而且我似乎遇到了一个我无法解决的问题.运行之后的输出是这样的:
Password Not Found. secret HXXxJi0n6Huro HXXxJi0n6Huro
Run Code Online (Sandbox Code Playgroud)
这意味着cryptWord和cryptPass是相同的,所以为什么程序不执行(if cryptWord == cryptPass:),和print 'Found Password:
我根本没有得到它.
dictionary.txt文件中只有多个单词secret,都在不同的行上.而且evil.txt文件有这一行:
test_user:HXXxJi0n6Huro
Run Code Online (Sandbox Code Playgroud)
据我所知,一切正常吗?但有些东西正在从正常工作中恢复过来,我无法弄明白.任何帮助,将不胜感激.
import crypt
def testPass(cryptPass):
salt = cryptPass[0:2]
dictFile = open('dictionary.txt', 'r')
for word in dictFile.readlines():
word = word.strip('\n')
cryptWord = crypt.crypt(word, salt)
if cryptWord == cryptPass:
print "[+] Found Password: "+word+"\n"
return
print "[-] Password Not Found. " +word, cryptWord, cryptPass+ "\n"
return
def main():
passFile= open('evil.txt')
for line in passFile.readlines():
if ":" in line:
user = line.split(':')[0]
cryptPass = …Run Code Online (Sandbox Code Playgroud) 我正在编写一个程序,允许用户设置个人测验(如记录卡类型系统).在进行测验时,用户会在每个问题上进行计时.答案不会是多项选择,但它们将由用户输入.
有没有办法让我能够充分接受答案,这些答案不是他们在第一次设置测验时输入的输入的完整答案?
问:"谁是苏格拉底."
答:"希腊哲学家."
我想过使用类似的东西:
if input in answer:
print "That's correct."
Run Code Online (Sandbox Code Playgroud)
但这根本不起作用.
有没有办法做到这一点?或者接近它的东西.
---更新---
我刚刚遇到了一个非常出色的Python模块,它被称为FuzzyWuzzy,这里有一个链接到它的描述以及它能做些什么http://seatgeek.com/blog/dev/fuzzywuzzy-fuzzy-string-匹配功能于蟒