Как проверить, если ключи в два раза больше или больше? - PullRequest
0 голосов
/ 04 ноября 2018

Я сделал функцию, которая конвертирует список в диктовку. Теперь я хочу проверить, имеют ли они одинаковую длину и имеют ли они ключи, которые появляются дважды.

def make_dict(keys, values):
    if len(keys) == len(values):
        return dict(zip(keys, values))
    else:
        None

Я хочу проверить эти 3 списка. Первое должно быть истинным, второе и третье ложным.

make_dict([1, 2, 3], ['a', 'b', 'c'])

make_dict([1, 2, 3], ['a', 'b'])

make_dict([1, 1], ['a', 'b'])

1 Ответ

0 голосов
/ 04 ноября 2018

Вы хотите проверить, что параметры make_dict действительны:

def make_dict(keys, values):
    if len(keys) != len(values):
        raise ValueError("keys and values have different length")
    result = dict(zip(keys, values))
    if len(result) != len(keys):
        raise ValueError("there are duplicate keys")
    return result
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...