mirror of
https://github.com/Findus23/nonsense.git
synced 2024-09-09 04:23:50 +02:00
45 lines
1.1 KiB
Python
Executable file
45 lines
1.1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
import random
|
|
|
|
import tomli
|
|
|
|
with open('words.toml',"rb") as data_file:
|
|
data = tomli.load(data_file)
|
|
|
|
|
|
def get_noun():
|
|
noun = random.choice(data["nouns"])
|
|
if random.random() <= 0.1:
|
|
noun += random.choice(data["suffix"])
|
|
if random.random() <= 0.1:
|
|
noun = random.choice(data["prefix"]) + noun
|
|
return noun
|
|
|
|
|
|
def get_description():
|
|
description = get_noun()
|
|
mit = False
|
|
num_extras = round(abs(random.normalvariate(2.0, 2.0)))
|
|
for i in range(0, num_extras):
|
|
rand = random.random()
|
|
if rand <= 0.35:
|
|
if mit:
|
|
extra = "und " + get_noun()
|
|
else:
|
|
extra = "mit " + get_noun()
|
|
mit = True
|
|
elif 0.35 <= rand <= 0.50:
|
|
extra = "für " + get_noun()
|
|
elif rand >= 0.90:
|
|
extra = random.choice(data["digit"])
|
|
mit = False
|
|
else:
|
|
extra = random.choice(data["adj"])
|
|
mit = False
|
|
description += " " + extra
|
|
return description
|
|
|
|
|
|
if __name__ == "__main__":
|
|
for _ in range(10):
|
|
print(get_description())
|