Source code for randword.rand_place

from random import choice, sample
from typing import Optional, List, Union

from .utilities import get_data


[docs]def country(count: Optional[int] = None) -> Union[str, List[str]]: ''' Returns a random country or a list of a random countries Args: count (int, optional): The number of countries to be generated. Defaults to `None` Returns: Union[str, List[str]]: A random country if `count` is `None` or a list of countries if `count` is not `None` ''' countries = get_data('places', 'countries') if count: return sample(countries, count) else: return choice(countries)
[docs]def city(count: Optional[int] = None) -> Union[str, List[str]]: ''' Returns a random city or a list of them Args: count (int, optional): The number of cities to be generated. Defaults to `None` Returns: Union[str, List[str]]: A random city if `count` is `None` or a list of cities if `count` is not `None` ''' cities = get_data('places', 'cities') if count: return sample(cities, count) else: return choice(cities)
if __name__ == '__main__': print(country()) print(city())