from matplotlib import pyplot as pl
import numpy as np
from math import log, log10
from random import choice
# numbers = np.random.uniform(size=1000)
# def generateHistogram(numbers, bins):
# min1 = min(numbers)
# max1 = max(numbers)
# diff = (max1 - min1) / bins
# values = []
#
# for i in range(0, bins, 1):
# count = 0
# for x in numbers:
# if (x >= min1) and (x <= (min1 + diff)):
# count = count + 1
# values.append(count)
# min1 = min1 + diff
#
# return values
#
# result = generateHistogram(result.values(), 10)
# fig = pl.figure()
# ax = pl.subplot()
# ax.bar(range(len(result)), result)
# pl.show()
file = open("norm_hamlet.txt")
txt = file.read()
result = {}
for x, text in enumerate(txt.strip()):
try:
result[txt.strip()[x:x + 5]] += 1
except:
result[txt.strip()[x:x + 5]] = 1
suma = 0
for k, v in result.items():
suma += v
for k, v in result.items():
result[k] = {
'value': v,
'new_value': int(round(v/suma, 3) * 1000),
'v_sume': v/suma
}
full_res = []
for k, v in result.items():
for i in range(v['new_value']):
full_res.append(k)
tekst = ""
counter = 0
for i in range(10000):
tekst += choice(full_res)
counter += 1
if counter == 40:
counter = 0
tekst += '\n'
print(tekst)
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}