07-04-2017, 08:51 AM
(This post was last modified: 07-05-2017, 12:20 AM by mrfancypants.)
That's Python (2.x) and no, you don't need an environment or an IDE, you can even do this
https://repl.it/JMbi/0
I go for MSVC++ for computationally expensive stuff, but, for basic analysis, command-line Python works very well:
https://repl.it/JMbi/0
I go for MSVC++ for computationally expensive stuff, but, for basic analysis, command-line Python works very well:
Code:
>>> pws=open('c:\\texts\\589-pws.txt','r').readlines()
>>> pws
['2a4w8c3c7#8x\n', '2c7p482e7w3=\n', (...) '7w7z226?4r9f\n', '7x5e572?6k53\n']
>>> pws=[x.replace('\n','') for x in pws]
>>> pws[3]
'2k722y6f4u7z'
>>> len(pws)
52
>>> pws.sort()
>>> pws[0]
'2%3y249=5c2s'
>>> y=[x[-2:] for x in pws]
>>> y
['2s', '2s', '9x', '2a', '9p', '8x', '3=', '5p', '7z', '4q', '35', '48', '7z', '8+', '48', '6?', '22', '4y', '5t', '8u',
'35', '6n', '4y', '66', '66', '3v', '8k', '6?', '3m', '3v', '6w', '2a', '35', '5j', '5j', '97', '7h', '5%', '7z', '2s',
'35', '3=', '84', '3m', '6w', '3v', '97', '2s', '6n', '7r', '9f', '53']
>>> len(list(set(y)))
31
>>> pws_2=[x for x in pws if x[0]=='2']
>>> pws_2
['2%3y249=5c2s',...., '2u6r7%9#8=35']
>>> z=''.join(pws)
>>> z
'2%3y249=5c2s245%...x5e572?6k53'
>>> charset=list(set(z))
>>> charset
['#', '%', '+', '3', '2', '5', '4', '7', '6', '9', '8', '=', '?', 'a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j',
'm', 'n', 'q', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y', 'x', 'z']
>>> len(charset)
37
>>> for c in charset:
... print c, z.count(c)
...
# 12
% 7
+ 7
3 54
2 45
5 67
4 46
7 48
6 50
9 29
8 47
= 12
? 10
a 9
c 9
b 6
e 7
d 7
g 1
f 5
i 4
h 3
k 15
j 5
m 7
n 10
q 9
p 8
s 12
r 8
u 8
t 10
w 12
v 7
y 10
x 7
z 11