Стек с колоннами - PullRequest
       5

Стек с колоннами

0 голосов
/ 20 февраля 2019

Я использую numpy.column_stack и у меня проблемы

Input = input('Input: ')

Words = ['First','Second','Third','Fourth','Fifth','Sixth','Seventh','Eigth','Ninth']
Numbers = [0.5,1,1.25,1.5,2,3,5,10,15]
Stack = np.column_stack((Words, Numbers))

Чего я надеюсь добиться:

Ввод: Второй
Выход: 1

Входные данные: Девятый
Выходные данные: 15

Позже я надеюсь получить дополнительный файл, который можно редактировать для определения списков слов и чисел.Я не знаю, является ли Column Stack лучшим способом сделать это, но это самая близкая вещь, о которой я мог подумать?

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Вы можете связать слова с числами, используя простые операции со списком:

In [283]: Numbers                                                               
Out[283]: [0.5, 1, 1.25, 1.5, 2, 3, 5, 10, 15]
In [284]: Numbers[Words.index('Fifth')]                                         
Out[284]: 2
In [285]: Numbers[Words.index('Second')]                                        
Out[285]: 1
In [286]: Numbers[Words.index('Ninth')]                                         
Out[286]: 15
0 голосов
/ 20 февраля 2019

Исходя из ваших правок, вы хотите использовать словарь:

Words = ['First','Second','Third','Fourth','Fifth','Sixth','Seventh','Eigth','Ninth']
Numbers = [0.5,1,1.25,1.5,2,3,5,10,15]
Stack = {word:number for (word, number) in zip(Words, Numbers)}

Input = input('Input: ')
try:
    print(Stack[Input])
except KeyError:
    print('Input: {} does not exist'.format(Input))

В этом примере Stack создается как словарь с использованием словарного понимания с zip.Затем вы используете Input от пользователя в качестве ключа для словаря.Если этот ключ находится в словаре, будет напечатано соответствующее значение, в противном случае будет напечатано сообщение о том, что ключа нет в словаре

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...