Как распечатать несколько аргументов на Python

  1. Требование
  2. Решения - Печать нескольких аргументов на Python
  3. Python 3.6 Только метод - форматирование f-строки

Мы покажем вам, как распечатывать несколько аргументов на Python 2 и 3.

Требование

Допустим, у вас есть две переменные

city = "Amsterdam"
country = "Netherlands"

Пожалуйста, распечатайте строку, содержащую оба аргумента city и country, как показано ниже.

City Amsterdam is in the country Netherlands

Решения - Печать нескольких аргументов на Python

Решения на Pythonх 2 и 3

1. Передавать значения как параметры

# Python 2
>>> print "City", city, 'is in the country', country

# Python 3
>>> print("City", city, 'is in the country', country)

2. Использовать строковое форматирование

Существует три метода форматирования строк, которые могут передавать аргументы в строку.

  • Последовательная опция
# Python 2
>>> print "City {} is in the country {}".format(city, country)

# Python 3
>>> print("City {} is in the country {}".format(city, country))
  • Форматирование с номерами

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

  # Python 2
  >>> print "City {1} is in the country {0}, yes, in {0}".format(country, city)

  # Python 3
  >>> print("City {1} is in the country {0}, yes, in {0}".format(country, city))
  • Форматирование с явными именами
  # Python 2
  >>> print "City {city} is in the country {country}".format(country=country, city=city)

  # Python 3
  >>> print("City {city} is in the country {country}".format(country=country, city=city))

3. Передайте аргументы в качестве кортежа

# Python 2
>>> print "City %s is in the country %s" %(city, country)

# Python 3
>>> print("City %s is in the country %s" %(city, country))

Python 3.6 Только метод - форматирование f-строки

Python представляет новый тип строковых литералов -f-strings начиная с версии 3.6. Он похож на метод форматирования строк str.format().

# Only from Python 3.6
>>> print(f"City {city} is in the country {country}".format(country=country, city=city))
comments powered by Disqus