Как мне получить распечатку, в которой указывается дата смерти авторов? - PullRequest
1 голос
/ 18 июня 2020

Я пытаюсь заставить его сказать, что «автор» умер в «date», но это не сработает.

authors = {
   "Charles Dickens": "1870",
   "William Thackeray": "1863",
   "Anthony Trollope": "1882",
   "Gerard Manley Hopkins": "1889"
   }
for author, date in authors.items():
   print( "%s" % authors + " died in "  + date)

Ответы [ 5 ]

1 голос
/ 18 июня 2020

вот простое и понятное решение

for author, date in authors.items():
   print( author + " died in "  + date)

вывод

Charles Dickens died in 1870
William Thackeray died in 1863
Anthony Trollope died in 1882
Gerard Manley Hopkins died in 1889
1 голос
/ 18 июня 2020

Вам просто нужно изменить имя переменной внутри печати с авторы (ваш полный dict) на author , представляя каждый экземпляр коллекции:

authors = {
   "Charles Dickens": "1870",
   "William Thackeray": "1863",
   "Anthony Trollope": "1882",
   "Gerard Manley Hopkins": "1889"
   }
for author, date in authors.items():
    print( "%s" % author + " died in "  + date)

Это дает следующий результат:

Charles Dickens died in 1870
William Thackeray died in 1863
Anthony Trollope died in 1882
Gerard Manley Hopkins died in 1889
0 голосов
/ 18 июня 2020

Вам необходимо изменить authors в операторе print на author, вы можете использовать несколько стилей печати для своих целей, выберите один из них с умом,

authors = {
   "Charles Dickens": "1870",
   "William Thackeray": "1863",
   "Anthony Trollope": "1882",
   "Gerard Manley Hopkins": "1889"
   }
for author, date in authors.items():
   #your statement
   print( "%s" % author + " died in "  + date)

   #using f before the string for python 3.6 and above
   print(f"{author} died in {date}")


   #using format() method of string
   print("{0} died in {1}".format(author,date))

   #using string concatenation
   print(author + " died in "+date)

Каждый оператор печатает одинаково вывод, но некоторые методы более полезны, чем другие, например, использование f или format() дает вам больше гибкости.

Надеюсь, это поможет вам!

0 голосов
/ 18 июня 2020
for author, date in authors.items():
   print( "%s" % author + " died in "  + date)
0 голосов
/ 18 июня 2020

Вы можете использовать формат для этого

authors = {
   "Charles Dickens": "1870",
   "William Thackeray": "1863",
   "Anthony Trollope": "1882",
   "Gerard Manley Hopkins": "1889"
   }
for author, date in authors.items():
     print('{}, in {}'.format(author, date)))

Или f-строку Python 3.6 и выше

for author, date in authors.items():
   print('{author}, in {date}'))

Вывод

Charles Dickens, in 1870
William Thackeray, in 1863
Anthony Trollope, in 1882
Gerard Manley Hopkins, in 1889
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...