Отображать значение переменных - PullRequest
0 голосов
/ 10 октября 2018

Код:

score={'a':1,'b':2,'c':3,'d':4,'e':5} #value of the alphabet

или

a=1
b=2
c=3
d=4
e=5

word=input('Enter a word:')
word_list=list(word)
for x in word:
  print(x)

Если я введу bad

Вывод:

b
a
d

Вопрос: КакМогу ли я поставить значение алфавита рядом с ним (в выводе), как это:

b 2
a 1
d 4

Ответы [ 4 ]

0 голосов
/ 10 октября 2018

One-Liner с использованием python 3.6 f-строк .

print("\n".join((f"{score} {scores[score]}" for score in scores))

Или, если вы не можете использовать f-strings, вы можете использовать:

print(("\n".join("{} {}".format(score, scores[score]) for score in scores))
0 голосов
/ 10 октября 2018

Цикл for перебирает только ключи.Чтобы получить значения, вам нужно

for letter, value in score.items():
    print(...)
0 голосов
/ 10 октября 2018

Один из способов сделать это в общем виде - с помощью функции ord, которая представляет целочисленное значение буквы

for letter in ['b', 'a', 'd']:
    print(letter + ' ' + str(ord(letter) - ord('a') + 1))

или

word = 'test'
for letter in word:
    print(letter + ' ' + str(ord(letter) - ord('a') + 1))

Таким образомнет необходимости в словаре

0 голосов
/ 10 октября 2018

Поскольку score является диктом, вы можете просто использовать x в качестве индекса, чтобы получить его значение:

for x in word:
  print(x, score[x])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...