RandomWords
Ostatnio potrzebne było mi wypełnić bazę testowymi danymi. Byle jakimi. Oczywiście pierwsze co to wszedłem na pierwszą lepszą stronę generującą lorem ipsum i jazda z ctrl+c, ctrl+v. Można, owszem, ale tylko wtedy gdy masz do wypełnienia mało komórek w bazie. Problem jest gdy tych komórek musisz wypełnić 100-1000. Metoda ctrl+c, ctrl+v nie jest wtedy fajna ;)
Oczywiście od razu poszperałem po sieci w celu znalezienia jakiegoś ciekawego generatora słów, zdań, etc. Ale nic co spełniałoby moje oczekiwania nie znalazłem. No trudno, to zrobię swoje narzędzie.
Główne założenia były takie:
- losowanie słowa z jakiegoś zakresu
- losowanie słowa zaczynającego się na pewną literę
- losowanie pewnej ilości słów i zwracanie ich w postaci listy
- losowanie pewnej ilości słów rozpoczynających się od pewnej litery
Przykłady użycia:
Co dalej? Co jest jeszcze do zrobienia?
Oj, bardzo dużo. Pierwsze co dodam w następnej poprawce to generowanie nicków. Później zajmę się generowaniem lorem ipsum i jakimiś prostymi zdaniami. Wszystko po to, aby wygenerowane dane przypominały te, które wprowadzają użytkownicy do baz danych.
Dzięki temu nie dostaniesz oczopląsu od kolejnego rekordu w stylu "asdhiofuqpfnasduixczvlbzxch" :)
>>> from random_words import RandomWords >>> rw = RandomWords() >>> word = rw.random_word() >>> print word factors >>> word = rw.random_word('y') >>> print word yards >>> words = rw.random_words(count=10) >>> print words ['runs', 'experience', 'comments', 'freedom', 'permit', 'honks', 'pins', 'texts', 'grant', 'fathers'] >>> words = rw.random_words(letter='r', count=5) >>> print words ['raincoat', 'reactance', 'room', 'relocation', 'rudders'] >>> words = rw.random_words(letter=None, count=2) >>> print words ['tides', 'eights']
Co dalej? Co jest jeszcze do zrobienia?
Oj, bardzo dużo. Pierwsze co dodam w następnej poprawce to generowanie nicków. Później zajmę się generowaniem lorem ipsum i jakimiś prostymi zdaniami. Wszystko po to, aby wygenerowane dane przypominały te, które wprowadzają użytkownicy do baz danych.
Dzięki temu nie dostaniesz oczopląsu od kolejnego rekordu w stylu "asdhiofuqpfnasduixczvlbzxch" :)
Comments
Post a Comment