За что отвечает буква f в строчке?

Рейтинг: 1Ответов: 2Опубликовано: 11.01.2023

в чем разница между geometry('400x500') и geometry(f'400x500') За что отвечает буква f в строчке ?

Ответы

▲ 1Принят

В случае geometry('400x500') и geometry(f'400x500') разницы нет, но f - это строковый литерал, условно - способ форматирования строки. Например, ты можешь вывести следующее значение таким образом:

i = range(10)
for r in i:
    print("Значение: ", r)
#"Значение:  0"
#"Значение:  1"
#"Значение:  2"
#"Значение:  3"
#"Значение:  4"
#"Значение:  5"
#"Значение:  6"
#"Значение:  7"
#"Значение:  8"
#"Значение:  9"

Либо же более красивое форматирование:

i = range(10)
for r in i:
    print(f"Значение: {r}")
▲ 0

Это называется форматирование строк. Если перед строкой стоит f, то в самой строке, то что находится в фигурных скобках рассматривается как переменная, значение которой и будет вставлено в строку:

name = 'Ivan'
print(f'Hello, {name}!')

В Вашем конкретном случае необходимость в f-строке может быть выражена так:

str_1 = "size 500x500"

size = 500
str_2 = f"size {size}x{size}"

print(str_1)
print(str_2)

PS

Вообще, этот способ форматирования возможен в питоне с версии 3.6. До этого использовался менее синтаксически удобный:

name = 'Ivan'
print('Hey {name}!'.format(name=name))

Но смысл абсолютно тот же