<filename>Sisin_Vadim_dz_3/5.py<gh_stars>0
# Реализовать функцию get_jokes(), возвращающую n шуток, 
# сформированных из трех случайных слов, взятых из трёх списков (по одному из каждого):

# nouns = ["автомобиль", "лес", "огонь", "город", "дом"]
# adverbs = ["сегодня", "вчера", "завтра", "позавчера", "ночью"]
# adjectives = ["веселый", "яркий", "зеленый", "утопичный", "мягкий"]
#     Например:
#     >>> get_jokes(2)
#     ["лес завтра зеленый", "город вчера веселый"]

# Документировать код функции.

# Сможете ли вы добавить еще один аргумент — флаг,
# разрешающий или запрещающий повторы слов в шутках 
# (когда каждое слово можно использовать только в одной шутке)? 
# Сможете ли вы сделать аргументы именованными?

from random import choice, shuffle

def get_jokes(num = 1, repeat = False):
    '''Возвращает num шуток. repeat определяет, доступость повтора слов'''
    
    
    nouns = ["автомобиль", "лес", "огонь", "город", "дом"]
    adverbs = ["сегодня", "вчера", "завтра", "позавчера", "ночью"]
    adjectives = ["веселый", "яркий", "зеленый", "утопичный", "мягкий"]
    # Проверяем, что бы num был в допустимых границах
    if num < 1: num = 1
    elif num > 5: num = 5
    
    if repeat:
        # Перемешиваем списки
        shuffle(nouns)
        shuffle(adverbs)
        shuffle(adjectives)
        # Строим итоговый список для неповторяющихся слов
        res = [' '.join([ nouns[i], adverbs[i], adjectives[i]]) for i in range(num)]
    else:
        # Строим итоговый список для повторяющихся слов
        res =  [' '.join([choice(nouns), choice(adverbs), choice(adjectives)])
            for _ in range(num)
    ]
    return res

    

print(get_jokes(4))
print(get_jokes(4, True))
print(get_jokes(repeat=True, num=3))
print(get_jokes())

<filename>Sisin_Vadim_dz_3/5.py<gh_stars>0
# Реализовать функцию get_jokes(), возвращающую n шуток, 
# сформированных из трех случайных слов, взятых из трёх списков (по одному из каждого):

# nouns = ["автомобиль", "лес", "огонь", "город", "дом"]
# adverbs = ["сегодня", "вчера", "завтра", "позавчера", "ночью"]
# adjectives = ["веселый", "яркий", "зеленый", "утопичный", "мягкий"]
#     Например:
#     >>> get_jokes(2)
#     ["лес завтра зеленый", "город вчера веселый"]

# Документировать код функции.

# Сможете ли вы добавить еще один аргумент — флаг,
# разрешающий или запрещающий повторы слов в шутках 
# (когда каждое слово можно использовать только в одной шутке)? 
# Сможете ли вы сделать аргументы именованными?

from random import choice, shuffle

def get_jokes(num = 1, repeat = False):
    '''Возвращает num шуток. repeat определяет, доступость повтора слов'''
    
    
    nouns = ["автомобиль", "лес", "огонь", "город", "дом"]
    adverbs = ["сегодня", "вчера", "завтра", "позавчера", "ночью"]
    adjectives = ["веселый", "яркий", "зеленый", "утопичный", "мягкий"]
    # Проверяем, что бы num был в допустимых границах
    if num < 1: num = 1
    elif num > 5: num = 5
    
    if repeat:
        # Перемешиваем списки
        shuffle(nouns)
        shuffle(adverbs)
        shuffle(adjectives)
        # Строим итоговый список для неповторяющихся слов
        res = [' '.join([ nouns[i], adverbs[i], adjectives[i]]) for i in range(num)]
    else:
        # Строим итоговый список для повторяющихся слов
        res =  [' '.join([choice(nouns), choice(adverbs), choice(adjectives)])
            for _ in range(num)
    ]
    return res

    

print(get_jokes(4))
print(get_jokes(4, True))
print(get_jokes(repeat=True, num=3))
print(get_jokes())

# Реализовать функцию get_jokes(), возвращающую n шуток, # сформированных из трех случайных слов, взятых из трёх списков (по одному из каждого): # nouns = ["автомобиль", "лес", "огонь", "город", "дом"] # adverbs = ["сегодня", "вчера", "завтра", "позавчера", "ночью"] # adjectives = ["веселый", "яркий", "зеленый", "утопичный", "мягкий"] #     Например: #     >>> get_jokes(2) #     ["лес завтра зеленый", "город вчера веселый"] # Документировать код функции. # Сможете ли вы добавить еще один аргумент — флаг, # разрешающий или запрещающий повторы слов в шутках # (когда каждое слово можно использовать только в одной шутке)? # Сможете ли вы сделать аргументы именованными? Возвращает num шуток. repeat определяет, доступость повтора слов # Проверяем, что бы num был в допустимых границах # Перемешиваем списки # Строим итоговый список для неповторяющихся слов # Строим итоговый список для повторяющихся слов