#python #dictionary
#python #словарь
Вопрос:
Описание вопроса таково: Напишите программу, чтобы получить ввод ключа и значения элемента в словаре.
Отобразите пару ключ-значение в формате словаря Python и найдите длину словаря.
Тестовый пример 1:
ВВОД
3
23
33
43
32
33
34
ВЫВОД
The dictionary is
{23: 32, 33: 33, 43: 34}
Length of dictionary is
3
Мой код:
n = int(input())
di = dict()
for i in range(0, n):
a = int(input())
b = int(input())
di[a] = b
print("The dictionary is")
print(di)
print("Length of dictionary is")
print(len(di))
Результат, который я получаю для того же ввода, что и приведенный выше, является:
The dictionary is
{23: 33, 43: 32, 33: 34}
Length of dictionary is
3
В чем моя ошибка?
Комментарии:
1. похоже, что словарь создается ключом как числом, обратным числу как значению. может быть, вам нужно сохранить все значения в списке, а затем создать dictionary
2. Если вы найдете ответ, который отвечает на ваш вопрос, пожалуйста, примите его
Ответ №1:
Похоже, что вводимые данные предоставляются в следующем порядке: i) размер словаря ii) ключи iii) значения
Кажется, вы читаете это как ключ, значение, key value …
Ответ №2:
Предоставленные входные данные расположены в следующем порядке:
- размер словаря
- ключи
- значения
Итак, ваш код должен выглядеть примерно так :
# collecting length
n=int(input())
# creating lists for keys and values
keys_list = []
values_list = []
# collecting keys
for i in range(0,n):
a=int(input())
keys_list.append(a)
# collecting values
for i in range(0,n):
a=int(input())
values_list.append(a)
# creating dictionnary
di = dict(zip(keys_list, values_list))
# printing result
print("The dictionary is")
print(di)
print("Length of dictionary is")
print(len(di))
Таким образом, вы сначала собираете все ключи и помещаете их в список, затем вы собираете все значения и помещаете их в список.
Наконец, вы создаете свой словарь на основе этих двух списков.
Ответ №3:
Может быть, просто это:
n = int(input('Input len of dict: '))
j = 0
l = []
while j != n * 2:
l.append(input('input num: '))
j = 1
di = {int(x): int(x[::-1]) for x in l[:3] if x[::-1] in l}
print(f"The dictionary is {di}nLength of dictionary is {len(di)}")