В Python 3 у меня есть список кортежей, содержащих различные записи, скажем, это называется alpha_data
. Они изложены следующим образом: [('A', 'Apple', 14.5), ('B', 'Banana', 23.4) и т. Д.]Сравнение ввода пользователя с кортежем
Есть ли способ, которым пользователь может ввести значение аналогично первому значению кортежа (например, A или B), и программа проверяет, существует ли это значение, и распечатайте все вложенное значение, если это произойдет? Пример:
Input: A
Output: A Apple 14.5
Есть также способ, которым это может быть изменен таким образом, пользователь может несколько значений входных и он проверяет и печатает их все? Например:
Input: A, B
Output:
A Apple 14.5
B Banana 23.4
EDIT: Может быть, мне нужно быть немного яснее. У меня есть код, который получает вход и преобразует его в список нескольких записей. Затем я получил строку, которая печатает 3 значения кортежа так, как мне это нужно. Все, что мне нужно, чтобы объединить эти две части.
Вот мой код до сих пор:
import shares
portfolio_str=input("Please list portfolio: ")
portfolio_str= portfolio_str.replace(' ','')
portfolio_str= portfolio_str.upper()
portfolio_list= portfolio_str.split(',')
print(portfolio_list)
print()
print('{:<6} {:<20} {:>8}'.format('Code', 'Name', 'Price'))
data=shares.EXCHANGE_DATA
for (code, name, share_value) in data:
if code == portfolio_list[]:
print('{:<6} {:<20} {:>8.2f}'.format(code, name, share_value))
else:
print("Failure")
Как вы можете видеть, я использую модуль под названием акции, содержащие список кортежей под названием EXCHANGE_DATA, который изложен следующим образом:
EXCHANGE_DATA = [('AIA', 'Auckair', 1.50),
('AIR', 'Airnz', 5.60),
('AMP', 'Amp',3.22),
('ANZ', 'Anzbankgrp', 26.25),
('ARG', 'Argosy', 12.22),
('CEN', 'Contact', 11.22),
('CNU', 'Chorus',3.01),
('DIL', 'Diligent', 5.3),
('DNZ', 'Dnz Property', 2.33),
('EBO', 'Ebos', 1.1),
Теперь, как мне получить его, чтобы проверить на любое значение в пользовательском вводе и распечатать любой из них?
Хорошо, вы можете объяснить, что вы пробовали до сих пор? Ваш вопрос не показывает никаких исследовательских усилий в противном случае (-1). – nneonneo
Я отредактировал его сейчас – jevans