Python String Formatting

Python String Formatting

Hi, we will examine the issue of string formatting in Python.
We can provide user side output with many different methods. There are many different methods. let’s start

Example student object :

student = {'name': 'John', "surname": 'Smith', 'age': 10}
content = 'Hi my name is ' + student['name'] + ' ' + student['surname'] + ' and ' + str(student['age']) + ' years old.'
print(content)

Result :

Hi my name is John Smith and 10 years old.
content = 'Hi my name is {} {} and {} years old.'.format(student['name'], student['surname'], str(student['age']))
print(content)

Result :

Hi my name is John Smith and 10 years old.
content = 'Hi my name is {0} {1} and {2} years old.'.format(student['name'], student['surname'], str(student['age']))
print(content)

Result :

Hi my name is John Smith and 10 years old.
content = 'Hi my name is {0[name]} {0[surname]} and {0[age]} years old.'.format(student)
print(content)

Result :

Hi my name is John Smith and 10 years old.
content = 'Hi my name is {name} {surname} and {age} years old.'.format(**student)
print(content)

Result :

Hi my name is John Smith and 10 years old.
print('Number: {:d}'.format(1000))

Result :

Number: 1000
print('Number: {:d}'.format(-1000))

Result :

Number: -1000
print('Float: {:f}'.format(5.2000))

Result :

Float: 5.200000
print('Float: {:.2f}'.format(5.2000))

Result :

Float: 5.20
print('String: {:s}'.format('Hi there'))

Result :

String: Hi there
Class custom format
class Student(object):
    def __init__(self):
        self.name = "John"
        self.surname = "Smith"
        self.age = 10

    def __format__(self, format_spec):
        if (format_spec == "student-format"):
            return "Hi my name is " + self.name + " " + self.surname + "  and " + str(self.age) + " years old."
        return self.name + " " + self.surname + str(self.age)
print('{:student-format}'.format(Student()))

Result :

Hi my name is John Smith and 10 years old.
print('{}'.format(Student()))

Result :

John Smith10

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply