Вставлять значения переменных в строку в python
Как вводит переменную [i] в строку в python.
Например, посмотрите на следующий script, я просто хочу дать имя изображению, например geo [0]. Tiff... to geo [i]. tiff, или если вы используете бухгалтера, так как я могу заменить часть цепочки создания стоимости, чтобы сгенерировать счетчик.
data = self.cmd("r.out.gdal in=rdata out=geo.tif")
self.dataOutTIF.setValue("geo.tif")
спасибо за ваши ответы
Ответы
Ответ 1
data = self.cmd("r.out.gdal in=rdata out=geo{0}.tif".format(i))
self.dataOutTIF.setValue("geo{0}.tif".format(i))
str.format(*args, **kwargs)
Выполните операцию форматирования строк. Строка, на которой эта метод может содержать литерал текстовые или замещающие поля ограничены по фигурным скобкам {}. Каждое поле замены содержит либо числовой индекс позиционный аргумент или имя ключевое слово. Возвращает копию строка, в которой каждая замена поле заменяется на строку значение соответствующего аргумента.
>>> "The sum of 1 + 2 is {0}".format(1+2)
'The sum of 1 + 2 is 3'
См. "Синтаксис строки форматирования" для описания различного форматирования параметры, которые могут быть указаны в форматирование строк.
Этот метод форматирования строк является новым стандартом в Python 3.0 и следует предпочесть% форматирование, описанное в String Операции форматирования в новом коде.
New in version 2.6.
Ответ 2
Вы можете использовать оператор %
для ввода строк в строки:
"first string is: %s, second one is: %s" % (str1, "geo.tif")
Это даст:
"first string is: STR1CONTENTS, second one is geo.tif"
Вы также можете делать целые числа с %d
:
"geo%d.tif" % 3 # geo3.tif
Ответ 3
Использование
var = input("Input the variable")
print("Your variable is " + var)
Обратите внимание, что var
должна быть строкой, если это не так, преобразовать ее в строку с помощью var = str(var)
.
Например
var = 5 # This is an integer, not a string
print("Var is " + str(var))
Это решение является самым легким для чтения/понимания, поэтому лучше для новичков, поскольку это просто простая конкатенация строк.
Ответ 4
Если вы используете Python 3. 6+, лучшее решение - использовать f-строки:
data = self.cmd(f"r.out.gdal in=rdata out=geo{i}.tif")
self.dataOutTIF.setValue(f"geo{i}.tif")
Это более читаемое и производительное решение.
Ответ 5
Если вы используете Python 3, то вы можете использовать F-строку. Вот пример
record_variable = 'records'
print(f"The element '{record_variable}' is found in the received data")
в этом случае вывод будет таким:
Элемент "записи" находится в полученных данных
Ответ 6
Вы также можете сделать это:
name = input("what is your name?")
print("this is",+name)