在Python中检查随机字符串

时间:2015-10-29 21:29:58

标签: python string random

是否有一个库允许我检查输入字符串的随机性?类似的东西:

 >>> is_random_str("dfgjfgnsdfj9p5230948hfirif") -> returns True
 >>> is_random_str("Hello theree") -> returns False

1 个答案:

答案 0 :(得分:5)

有一个zxcvbn

的python端口

它将计算熵(可猜测性)但不计算“随机性”。但是,要检查“随机性”,首先必须通过查找(英语)字典来建立“字典”。获得更少的匹配意味着它更随机。在核心,zxcvbn中有这个逻辑来检查10,000个单词的常用字典。

还有另一种策略可能很简单,你会追求什么。您可以检查“发音能力”并查找类似{{consonant}} {{vowel}} | {{double vowel:au,oo,ou}} {{ consonant }} | {{double consonant:tt,pp,th}}的模式然后,对于每次违反您定义的模式,您都会增加随机性分数。