Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.47 KB | None | 0 0
  1. import random
  2. import time
  3.  
  4. random.seed(random.randint(0,100) + time.time())
  5.  
  6. def rand_typo(ft):
  7.     ftlen = len(ft)-1
  8.     r1 = random.randint(0, ftlen)
  9.     r2 = random.randint(r1, r1+random.randint(1,3))
  10.     temp = ft[r1], ft[r2]
  11.     ft[r2], ft[r1] = temp
  12.     return ft
  13.  
  14. def randpeek(ft):
  15.     rn = len(ft)-1
  16.     chain = ft[random.randint(0, rn):random.randint(0, rn)]
  17.     chain2 = ft[random.randint(0, rn):random.randint(0, rn)]
  18.     ft[random.randint(0, rn):random.randint(0, rn)] = chain + chain2
  19.     if random.choice([True, False]):
  20.         ft = rand_typo(ft)
  21.     return ft
  22.  
  23. def randt(text):
  24.     ft = list(text)
  25.     peek = random.randint(0, len(ft)-1)
  26.     pk2 = random.randint(0, len(ft)-1)
  27.     temp = ft[pk2]
  28.     ft[pk2] = ft[peek]
  29.     ft[peek] = ft[pk2]
  30.     if random.choice([True, False]):
  31.         ft = randpeek(ft)
  32.     return ''.join(ft)
  33.  
  34. def minrep(text, chains):
  35.     chances = (
  36.         lambda chain: random.choice(random.choice(chains).split(' ')),
  37.         lambda chain: randt(random.choice(chain))
  38.     )
  39.     text = text.split(' ')
  40.     rchoice = random.randint(0, len(text)-1)
  41.     text[rchoice] = random.choice(chances)(chains)
  42.     return ' '.join(text)
  43.  
  44. def shit(learn_mat = [], count = 3):
  45.     callbacks = (
  46.         lambda x, chains: x + ' ' + random.choice(random.choice(learn_mat)),
  47.         minrep
  48.     )
  49.     text = ""
  50.     for n in range(0,count):
  51.         text += random.choice(callbacks)(random.choice(learn_mat), learn_mat)
  52.         text += " "
  53.     return text
  54.  
  55. with open("dataset.txt") as file:
  56.     mat = file.read().split('::\n')
  57. mat = [n.strip() for n in mat]
  58. print(shit(mat))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement