Какво представлява форматът на Python String ()?
Форматът на Python String () е функция, използвана за заместване, заместване или преобразуване на низа с заместители с валидни стойности в крайния низ. Това е вградена функция на Python низ клас, която връща форматирания низ като изход. Заместителите в низа са дефинирани в къдрави скоби.
Например "Добре дошли в Guru99 {}". Формат ('стойност тук').
В този урок ще научите:
- Какво представлява форматът на Python String ()?
- Синтаксис на функцията format () в Python
- Как работи низ форматът ()?
- Пример: Празният заместител е заменен със стойност на низ
- Пример: Празният заместител е заменен с цифрова стойност
- Пример: Използване на аргументи на променлива или ключова дума вътре в Placeholder
- Пример: Използване на индекси или позиционни аргументи вътре в Placeholder
- Форматиране вътре в резервоари
- Използване на клас с формат ()
- Използване на речник с формат ()
- Запълване на променливи замествания
Синтаксис на функцията format () в Python
templatestring.format(val1, val2… )
Параметри
val1, val2…: Стойностите, които трябва да бъдат заменени в дадения низ на шаблон, който има заместители под формата на къдрави скоби {}. Заместителите могат да бъдат низ, двойка ключ / стойност, цели числа, числа с плаваща запетая, знаци и т.н.
Върната стойност:
Той ще върне крайния низ, като валидните стойности ще бъдат заменени вместо заместителите, дадени в къдри скоби.
Заместители
Заместителите в низа на шаблона са представени с помощта на къдрави скоби, например {}. Заместителят може да е празен {}, или може да има променлива за напр. {Name}, или може да има цифров индекс, например {0}, {1} и т.н.
Как работи низ форматът ()?
Методът Python String format () ще сканира оригиналните низове за запазени места. Заместителите могат да бъдат празни къдрави скоби ({}), позиционни аргументи, т.е. низът може да има заместители с индекс 0, 1 за напр. {0}, {1} и т.н.
За аргументи на ключови думи името на променливата ще присъства във фигурните скоби за например {name}, {age}. В случай на празни къдрави скоби, стойностите от формата ще бъдат заменени последователно в къдравите скоби.
Първата стойност ще бъде заменена с първата празна къдрава скоба, последвана от следващата. За позиционни аргументи индексът ще започне от 0 и т.н. Стойностите ще бъдат налични във формат, разделен със запетаи, а 0 -тата стойност ще сочи към първата стойност във формата и т.н.
За аргументи на ключови думи, т.е. когато използвате променлива във вашите заместители, можете да имате реда на стойностите във формата, колкото ви е необходимо.
Тук редът няма значение, тъй като стойностите ще бъдат заменени въз основа на името на променливата, налично във формата (). Ето няколко примера за това как да използвате заместващи елементи в низ като празни, позиционни и с помощта на ключови думи или променливи.
Пример: Празният заместител е заменен със стойност на низ
В примера по-долу низът има празни къдрави скоби ({}). Стойността, дадена на формата, ще бъде заменена във фигурните скоби ({}).
Стойността, която искаме да бъде заменена, е низ.
Пример:
Използвайки Форматиране на низове в Python, искаме къдравите скоби ({}) да бъдат заменени със стойност на низ. Стойността се дава във формат ("Guru99"). При изпълнението, къдравите скоби {} се заменят с Guru99 и ще получите последния низ като Добре дошли в уроци за Guru99.
print ("Welcome to {} tutorials".format("Guru99"))
Изход:
Welcome to Guru99 tutorials
Пример: Празният заместител е заменен с цифрова стойност
В примера по-долу искаме числовата стойност да бъде заменена в оригиналния низ. Къдравите скоби ({}) се добавят към мястото, където се нуждаете от числовата стойност. Когато се изпълни, празните къдрави скоби ({}) се заменят с числовата стойност.
Пример:
Можете също така да използвате format (), за да вмъкнете числа във вашия низ. Примерът ще покаже как да заменим празния Placeholder {} с номер 99, присъстващ във формат ().
print ("Welcome to Guru{} Tutorials".format("99"))
Изход:
Welcome to Guru99 Tutorials
Пример: Използване на аргументи на променлива или ключова дума вътре в Placeholder
Също така е възможно да се използват променливи във фигурните скоби, както е показано в примера по-долу. Променливите са дефинирани във формат (). Следователно, когато тя се изпълнява, стойността, присвоена на променливата, се заменя вътре в оригиналния низ.
Пример:
Можете да използвате променливи във фигурни скоби, например {name} {num}. Стойностите за име и променлива num са налични във формат, т.е. формат (name = "Guru", num = "99"). Стойностите, дадени на name и num, ще бъдат заменени в {name} и {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Изход:
Welcome to Guru99 Tutorials
Пример: Използване на индекси или позиционни аргументи вътре в Placeholder
Стойностите могат да бъдат заменени с помощта на индекси като 0, 1, 2 вътре в заместителите. Стойността ще бъде избрана по ред от формата (), както е показано в примера по-долу.
Пример:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Изход:
Welcome to Guru99 Tutorials
Пример: Използване на множество заместители в низ
В този пример ще използваме множество празни заместители.
Пример:
Низът, използван в примера, има множество празни заместители и всеки заместител ще се позовава на стойност вътре във формат (). Първата стойност ще бъде заменена за първата заместител и така нататък.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Изход:
Guru99 is totally new kind of learning experience!
Форматиране вътре в резервоари
Видяхте, че е възможно Placeholder да е празен, с променлива или индекс. Възможно е също така да приложите форматиране на Python String в Placeholder.
Ето списъка с формати
Формат | Описание | Пример |
---|---|---|
:д | Той ще даде изхода в десетичен формат, когато се използва в заместителя | print("The binary to decimal value is : {:d}".format(0b0011)) Изход:
The binary to decimal value is : 3 |
: b | Той ще даде изхода в двоичен формат, когато се използва вътре в запазеното място | print("The binary value is : {:b}".format(500)) Изход:
The binary value is : 111110100 |
: д | Това ще даде изхода в научен формат, когато се използва в заместителя, степента e в изхода ще бъде с малки букви. | print("The scientific value is : {:e}".format(40)) Изход:
The scientific format value is : 4.000000e+01 |
: E | Той ще даде изхода в научен формат, когато се използва вътре в заместителя, степента E в изхода ще бъде главна | print("The scientific value is : {:E}".format(40)) Изход:
The scientific value is : 4.000000E+01 |
: f | Това ще изведе числов формат с фиксирана точка. По подразбиране ще получите изхода на произволно число с шест знака след десетичната запетая. В случай, че имате нужда от до 2 знака след десетичната запетая, използвайте го като. 2f т.е. ... точка (.) Пред 2f | print("The value is : {:f}".format(40)) Изход:
The value is : 40.000000Пример: Показване на изход до 2 знака след десетичната запетая. print("The value is : {:.2f}".format(40)) Изход:
The value is: 40.00 |
: o | Това ще изведе осмичен формат | print("The value is : {:o}".format(500)) Изход:
The value is : 764 |
:х | Това ще изведе шестнадесетичен формат с малки букви | print("The value is : {:x}".format(500)) Изход:
The value is : 1f4 |
:Х | Това ще изведе шестнадесетичен формат с главни букви. | print("The value is : {:X}".format(500)) Изход:
The value is : 1F4 |
:н | Това ще изведе числов формат. | print("The value is : {:n}".format(500.00)) Изход:
The value is : 500 |
:% | Това ще даде изхода в процентен формат. По подразбиране ще даде 6 знака след десетичната запетая за процентния изход, в случай че не искате никаква десетична стойност, можете да използвате точка с 0 т.е. (: .0%). | print("The value is : {:%}".format(0.80)) Изход:
The value is : 80.000000%Този пример показва как да пропуснете десетичната запетая, като използвате {: .0%} вътре в заместителя. print("The value is : {:.0%}".format(0.80)) Изход:
The value is: 80% |
: _ | Това ще изведе подчертание като разделител на хиляди. Предлага се от python 3.6+. | print("The value is {:_}".format(1000000)) Изход:
The value is : 1_000_000 |
:, | Това ще изведе запетая като разделител на хиляди | print("The value is : {:,}".format(1000000)) Изход:
The value is : 1,000,000Добавя се запетая (,) като разделител на хиляди, както е показано в изхода. |
: | Това ще добави интервал преди всякакви положителни числа | Този пример показва как да добавите интервал или подложка преди дадения номер. Числото 5 показва броя на интервалите, който искате преди числото. print("The value is: {:5}".format(40)) Изход:
The value is: 40 |
: - | Това ще добави знак минус преди отрицателни числа | Примерът показва как да получите изхода със знак минус (-) преди числото, като използвате {: -}. print("The value is: {:-}".format(-40)) Изход:
The value is: -40 |
: + | Можете да използвате знак плюс, за да укажете, че числото е положително | Примерът показва как да получите изхода със знак плюс (+) преди числото, като използвате {: +}. print("The value is: {:+}".format(40)) Изход:
The value is: +40 |
: = | Равен на се използва за поставяне на знака +/- от лявата страна. | Примерът показва как да получите изхода със знак плюс (+/-) преди да е равен на знак, като използвате {: =}. print("The value is {:=}".format(-40)) Изход:
The value is -40 |
: | Това ще подреди центъра на крайния резултат | Примерът показва използването на {: ^} за центриране на текста в центъра. Числото 10 се използва за добавяне на 10 интервали, за да се покаже изравненото по центъра, когато стойността се замени. print("The value {:^10} is positive value".format(40)) Изход:
The value 40 is a positive valueТук можете да използвате 10, които ще добавят 10 интервала в окончателния текст и стойността, която трябва да бъде заменена, ще бъде подравнена по центъра между 10 интервала. Интервалите от 10 се добавят, само за да покажат централното подравняване на заменената стойност. |
:> | Това ще подравни окончателно резултата | Пространството от 10 се добавя с помощта на (:> 10) и заменената стойност е подравнена вдясно. print("The value {:>10} is positive value".format(40)) Изход:
The value 40 is positive value |
: < | Това ще подравни крайния резултат | Пространството от 10 се добавя с помощта на (: <10) и стойността заменя се подравнява вляво. print("The value {:<10} is positive value".format(40)) Изход:
The value 40 is positive value |
Използване на клас с формат ()
В този пример ние създаваме клас и използваме обекта на класа в метода .format Python. Заместителите ще се отнасят до свойствата на класа или членовете, използващи обекта на класа.
Пример:
Класът се извиква във формата (c = MyClass ()). Обектът c ще има препратка към свойствата и методите в класа MyClass ().
class MyClass:msg1="Guru"msg2="Tutorials"print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Изход:
Welcome to Guru99 Tutorials!
Използване на речник с формат ()
Също така е възможно да се използва речник във формат (), както е показано в примера по-долу:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Изход:
Welcome to Guru99 Tutorials!
Запълване на променливи замествания
Използвайки метода string.format (), можете да добавите подложка, интервал, като използвате заместващи елементи във вашия низ.
Пример:
В примера по-долу ще добавите място вътре в Placeholder, използвайки формата (). За да добавите интервал, трябва да посочите броя на интервалите в къдравите скоби след двоеточието (:). Така Placeholder ще изглежда като {: 5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Изход:
I have 2 dogs and 1 cat
Можете също така да дадете индекса вътре в заместителя, например: {0: 5}, където 0 ще се отнася до първата стойност във формата.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Изход:
I have 2 dogs and 1 cat
Обобщение
- Python низовият клас ни дава важна вградена команда, наречена format (), която ни помага да заменим, заменим или преобразуваме низа с заместители с валидни стойности в крайния низ.
- Заместителите в модула на низовете Python са дефинирани в къдрави скоби, например „Добре дошли в Guru99 {}“. Формат („стойност тук“).
- Заместителят може да е празен {}, или може да има променлива за напр. {Name}, или може да има цифров индекс, например {0}, {1} и т.н.
- Можете да използвате форматирането на низове в Python вътре в заместители, които могат да помогнат за добавяне на подложка, подравняване по центъра и също така за форматиране на числа.