Метод печати вопроса Python - PullRequest
0 голосов
/ 10 февраля 2009

Что в Python означает 2%?

print "%s" % ( i )

Ответы [ 5 ]

8 голосов
/ 10 февраля 2009

Как уже говорили другие, это оператор форматирования / интерполяции строк Python. Это в основном эквивалент sprintf в C, например:

a = "%d bottles of %s on the wall" % (10, "beer")

эквивалентно чему-то вроде

a = sprintf("%d bottles of %s on the wall", 10, "beer");

в C. Каждый из них имеет результат a, установленный в "10 bottles of beer on the wall"

Обратите внимание, что этот синтаксис устарел в Python 3.0; его замена выглядит примерно так:

a = "{0} bottles of {1} on the wall".format(10, "beer")

Это работает, потому что любой строковый литерал автоматически превращается в объект str с помощью Python.

5 голосов
/ 10 февраля 2009

Второй% - оператор интерполяции строки.

Ссылка на документацию .

0 голосов
/ 10 февраля 2009

Если вы переводите код на английский, он говорит: возьмите строку i и отформатируйте ее в строку предиката.

Другой пример:

name = "world"
print "hello, %s" % (name)

Дополнительная информация о спецификаторах формата.

0 голосов
/ 10 февраля 2009
print "%d%s" % (100, "trillion dollars") # outputs: 100 trillion dollars
0 голосов
/ 10 февраля 2009

Это спецификатор формата

Простое использование:

# Prints: 0 1 2 3 4 5 6 7 8 9
for i in range(10):
    print "%d" % i,
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...