Skip to main content

Python library to generate random things.

Project description

Randomit 🎲

A Python library to generate random things.

codecov coverage example workflow

pypi package versions brought by shields.io pypi package badge brought by Gemfury Downloads licence brought by shields.io

twitter account brought by shield.io reddit account brought by shield.io youtube account brought by shields.io


Currently, randomit can:

To see what's coming next, see open projects.

💡Usage

Randomize words

Words will always be different on each execution no matter what arguments being passed.

from randomit.randomizer import Words

# return one word
Words(theme='random words').randomize(return_one_word=True)
# cabinet
# bristlecone pine
# dim - bright

Words(theme='random words').randomize()  # returns a list of 17k words
Words(theme='random words').randomize(words_to_return=3)  # ['axis', 'overabundant', 'superuser']

Words(theme='random words').randomize(letter_starts_with='A')  # returns all words that starts with letter "A" 
Words(theme='names').randomize(letter_starts_with='A', words_to_return=3)  # ['abandoned', 'able', 'absolute']
Words(theme='names').randomize(letter_starts_with='A', words_to_return=3, capitalize=True)  # ['Apron', 'Ashes', 'Anvil']

Get Addresses

import json

address_list = Words(theme='address').randomize(words_to_return=1, return_dict=True)

print(json.dumps(address_list, indent=2))

'''
[
  {
    "address": "777 brockton avenue",
    "city": "abington",
    "state": "ma",
    "zip": "2351"
  }
]
'''

# if "return_dict" argument isn't specified it will return a list():
'''
["2465 hempstead turnpike, east meadow ny 11554"]
'''

If you want to add your list of addresses, have a look at addresses_list.txt and format it as it's formatted there to work properly.

Format:address, city, state, zip

Look for available built-in themes

If "theme" argument is not specified ➡ defaults to "random words".

Words().available_themes()
# ['random words', 'names', 'surnames', 'cities', 'countries', 'address']

Specify theme you want to get words from

Words(theme='cities').randomize()  # pass available arguments

Load and pass file(s) with words

Make sure all words are lowercase, and start on a new line (\n), otherwise it won't work.

# call your words
Words(file=YOUR_FILE).randomize(capitalize=True, return_one_word=True)

# Bazinga!

Random Images

Enter any query, and it will return a random image(s) URL based on the provided query, and it will be random on each execution.

from randomit.randomizer import Images

Images(query='cats', amount_to_return=3).get_randomized() 
# ['https://images.pexels.com/photos/1170986/pexels-photo-1170986.jpeg', 'https://images.pexels.com/photos/1056251/pexels-photo-1056251.jpeg', 'https://images.pexels.com/photos/1056251/pexels-photo-1056251.jpeg']

# if "amount_to_return" argument is not specified -> defaults to batch of 100 images.

📡 Installation

$ pip install randomit
$ git clone https://github.com/dimitryzub/randomit.git

👾 Suggestions

If you have any suggestions or ideas what will be good to add, get involved in discussions section.

🔬 Issues

For issues, visit issues page 🙃

Note for replit.com users. If you’re using randomit on replit, it will throw an error for no obvious for me reason. If you know how to fix it, please, let me know.

Installing package locally via pip doesn’t produce such error as it should (tested in Pycharm and VSCode).

📜 Docs

To read more in-depth about something, visit documentation page. Currently, there's nothing there. It's under development. Soon there will be more examples.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

randomit-0.2.3-py3-none-any.whl (131.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page