Я не понимаю, что %s
и как %d
делать, и как они работают.
python
string-formatting
karlzt
источник
источник
%s
это используется с конфигурациями поисковых систем. Chrome использует%s
для замены ключевых слов, введенных в адресной строке. Python использует%s
аналогичным образом. Вprint('description: %s' % descrip)
с%s
оператором будет заменен текстовой строки , хранящейся вdescrip
переменной. Круглые скобки предотвращают сообщение об ошибке в Python 3.из питона 3 док
%d
для десятичного целого числа%s
для общей строки или объекта, а в случае объекта она будет преобразована в строкуРассмотрим следующий код
выход будет
как вы можете видеть,
%d
будет усекать до целого числа,%s
будет поддерживать форматирование,%f
печатать как число с плавающей точкой и%g
будет использоваться для общего числаочевидно
сгенерирует исключение; вы не можете преобразовать строку в число
источник
%s
вместо этого используется номер.%s
используется в качестве заполнителя для строковых значений, которые вы хотите вставить в форматированную строку.%d
используется в качестве заполнителя для числовых или десятичных значений.Например (для питона 3)
Будет выходной
источник
Это заполнители:
Например:
'Hi %s I have %d donuts' %('Alice', 42)
Эта строка кода заменит% s Алисой (str) и% d 42.
Вывод:
'Hi Alice I have 42 donuts'
Это может быть достигнуто с "+" большую часть времени. Чтобы глубже понять ваш вопрос, вы можете также проверить {} / .format (). Вот один пример: форматирование строки Python:% против .format
также смотрите здесь обучающее видео по Google Python @ 40 ', в нем есть некоторые объяснения https://www.youtube.com/watch?v=tKTZoB2Vjuk
источник
%d
И%s
строка форматирования «команды» используются для строк формата. Это%d
для чисел и%s
для строк.Для примера:
и
Чтобы передать несколько аргументов:
print("%s %s %s%d" % ("hi", "there", "user", 123456))
вернетсяhi there user123456
источник
Все это информативные ответы, но ни один из них не совсем понимает, в чем разница между
%s
и%d
.%s
говорит форматировщику вызватьstr()
функцию для аргумента, и поскольку мы приводим строку к определению,%s
по сути, просто выполняемstr(arg)
.%d
с другой стороны, вызываетint()
аргумент перед вызовомstr()
, напримерstr(int(arg))
, это вызоветint
как принуждение, так иstr
принуждение.Например, я могу преобразовать шестнадцатеричное значение в десятичное,
или обрезать поплавок.
Но операция вызовет исключение, если аргумент не является числом.
Так что, если целью является просто вызов
str(arg)
, то этого%s
достаточно, но если вам нужно дополнительное форматирование (например, форматирование с плавающей запятой) или другое приведение, тогда нужны другие символы формата.В
f-string
обозначениях, когда вы оставляете форматер вне, по умолчанию используетсяstr
.То же самое относится и к
string.format
; по умолчанию этоstr
.источник
%d
и%s
являются заполнителями, они работают как заменяемая переменная. Например, если вы создаете 2 переменныеВы можете назначить эти переменные предложению в строке, используя кортеж переменных.
Обратите внимание, что
%s
работает для String и%d
работает для числовых или десятичных переменных.если вы напечатаете
variable_3
это будет выглядеть такЯ искал ответ в StackOverflow и нашел более 45 ответов на мой вопрос.
источник
Они являются спецификаторами формата. Они используются, когда вы хотите включить значение ваших выражений Python в строки, с соблюдением определенного формата.
Смотрите Dive into Python для относительно подробного введения.
источник
Согласно последним стандартам, так и должно быть.
Проверьте документы Python3.6 и пример программы
источник
Если вы хотите избежать% s или% d, тогда ..
Вывод:
источник
%s
и%d
.print
это функция в Python 3, а не оператор.% s используется для хранения пробела для строки% d используется для хранения пробела для числа
Выход программы
это видео подробно рассказывает об этом совете https://www.youtube.com/watch?v=4zN5YsuiqMA
источник
Говоря о том, что ...
Python3.6 идет с,
f-strings
что делает вещи намного проще в форматировании!Теперь, если ваша версия Python больше 3,6, вы можете отформатировать строки с помощью следующих доступных методов:
источник