Как проверить, есть ли введенное число в словаре?

Я пытаюсь сделать этот код, чтобы он распечатывал все в словаре, а затем пользователь мог выбрать, какой элемент словаря он хочет, мне нужно было бы иметь возможность использовать ключ, который они выбрали, и удалить его из словаря.

dict = {'i': [24062, 'txt'], 'e': [10293, 'txt2']}

v = 0
for i in dict
    v += 1
    print(f'({v}) {i}')
v += 1
print(f'({v}) Back')
getinput = int(input('>> '))
if getinput < v and getinput > -1:
# I want it to find the key and value you selected
# I want it to print the key and the value you selected
elif getinput == v:
    print('Go back to menu')
else:
    print('Didnt work :(')

А также примечание: плохая идея назвать свой словарь dict в целом, так как вы фактически перезаписываете уже существующее имя в python.

Pac0 09.04.2022 19:28

извините, я просто использовал это как пример. На самом деле это не дикт в коде

ColoredHue 10.04.2022 01:00
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Четыре эффективных способа центрирования блочных элементов в CSS
Четыре эффективных способа центрирования блочных элементов в CSS
У каждого из нас бывали случаи, когда нам нужно отцентрировать блочный элемент, но мы не знаем, как это сделать. Даже если мы реализуем какой-то...
1
2
48
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Попробуй это. Вы можете преобразовать словарь в список и получить ключ и значение в соответствии с индексом.

dict = {'i': [24062, 'txt'], 'e': [10293, 'txt2']}

v = 0
for i in dict:
    v += 1
    print(f'({v}) {i}')
v += 1
print(f'({v}) Back')
getinput = int(input('>> '))

index = getinput -1
if getinput < v and getinput > -1:
    key = list(dict)[index]
    val = list(dict.values())[index]
    print(key, val)

elif getinput == v:
    print('Go back to menu')
else:
    print('Didnt work :(')

Выход:

E:\>python test.py
(1) i
(2) e
(3) Back
>> 1
i [24062, 'txt']

E:\>python test.py
(1) i
(2) e
(3) Back
>> 2
e [10293, 'txt2']

E:\>python test.py 3
(1) i
(2) e
(3) Back
>> 3
Go back to menu

Этот вопрос ниже содержит более подробную информацию. Как сделать индексацию в словаре?

Ответ принят как подходящий

Этот подход создает еще один словарь (контейнер key: value пар) e с ключом, равным индексу, связанному с ключом из d словаря, и со значением, равным соответствующему ключу из d словаря. Учитывая ваш словарь выше (я называю его d), e будет {0: 'i', 1: 'e'}: значения представляют ключи из d словаря, а ключи — это индексы этих ключей из d словаря.

Затем пользователь будет выбирать один из индексов. Затем e[getinput] предоставит связанный ключ словаря d.

Надеюсь, это поможет. Пожалуйста, дайте мне знать, если есть какие-либо вопросы!

d = {'i': [24062, 'txt'], 'e': [10293, 'txt2']}

e = {}
for idx, i in enumerate(d):
    e[idx] = i
    print(f'({idx}) {i}')

idx += 1
print(f'({idx}) back')

# get user input 
getinput = int(input('>> '))
if getinput <= idx - 1 and getinput >= 0:
    print(f"You selected: {e[getinput]}: {d[e[getinput]]}")
elif getinput == idx:
    print('Go back to menu')
else:
    print('Didnt work :(')

Пример сеанса:

(0) i
(1) e
(2) back
>> 1
You selected: e: [10293, 'txt2']

Другие вопросы по теме