• Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard
CSEstack

What do you want to Learn Today?

  • Programming
    • Tutorial- C/C++
    • Tutorial- Django
    • Tutorial- Git
    • Tutorial- HTML & CSS
    • Tutorial- Java
    • Tutorial- MySQL
    • Tutorial- Python
    • Competitive Coding Challenges
  • CSE Subject
    • (CD) Compiler Design
    • (CN) Computer Network
    • (COA) Computer Organization & Architecture
    • (DBMS) Database Management System
    • (DS) Data Structure
    • (OS) Operating System
    • (ToA) Theory of Automata
    • (WT) Web Technology
  • Interview Questions
    • Interview Questions- Company Wise
    • Interview Questions- Coding Round
    • Interview Questions- Python
    • Interview Questions- REST API
    • Interview Questions- Web Scraping
    • Interview Questions- HR Round
    • Aptitude Preparation Guide
  • GATE 2022
  • Linux
  • Trend
    • Full Stack Development
    • Artificial Intelligence (AI)
    • BigData
    • Cloud Computing
    • Machine Learning (ML)
  • Write for Us
    • Submit Article
    • Submit Source Code or Program
    • Share Your Interview Experience
  • Tools
    • IDE
    • CV Builder
    • Other Tools …
  • Jobs

4 Python String Formatting Every Python Developer should Master

Aniruddha Chaudhari/18126/0
CodePython

Coming so far with programming, we know, the string is a set of characters. And no doubt, it is one of the most useful data types in any programming language.

What is Python String Formatting?

Instead of using a string as it is, many times we need to stuff the string with other data value. And it is called as string formatting.

You will learn more about it as I explain string formatting with an example below.

In this tutorial, you will also learn to use different approaches for string formatting in Python.

Table of contents

  1. String Formatting using % Operator
  2. String Formatting using str.format()
  3. (Python 3.6+) String Formatting using f-Strings
  4. Template Strings (Standard Library)

To make the best use of this tutorial and mastering string formatting, open your Python interpreter and try running commands as we go with this tutorial.

So, without squandering any further time, let’s discuss now.

1) String Formatting using % Operator

This is the oldest string formatting method.

>>> lang = 'Python'
>>>'You are working with %s' % lang
"You are working with Python"

Here, we are substituting string value. %s is a format specifier for string data. Other than string, you can substitute any other data types as well.

Below is an example where the hexadecimal value is substituted.

>>> noErr = 45565
>>> '%x' % errno
'b1fd'

%x is a format specifier for hexadecimal data. With this format specifier, you can convert an integer value into the hex decimal value and then formate it into the string.

Always print hexadecimal values in the standard format by appending “0x” before the hexadecimal string. It makes easy for the end user to identify the formatting of data value.

If there are multiple substitutions or if you want to stuff multiple values into the single string, you need to pass those values as tuple elements.

>>> lang = 'Python'
>>> noErr = 45565
>>> 'You are working with %s. Please refer 0x%x error.' % (lang, noErr)
'You are working with Python. Please refer 0xb1fd error.'

You can also pass multiple substitute variables using dictionary name-value pair.

>>> lang = 'Python'
>>> noErr = 45565
>>> 'You are working with %(lang)s. Please refer 0x%(noErr)x error.' % {
... "lang": lang, "noErr": noErr}
'You are working with Python. Please refer 0xb1fd error.'

Here you don’t need to worry about the sequence of substitute variables.

2) String Formatting using str.format()

You can call the format method using the str string object.

>>> lang = 'Python'
>>> ''You are working with  {}'.format(lang)
'You are working with Python'

With this approach, passing the name-value pairs as an argument to the format method is easy.

>>> lang = 'Python'
>>> noErr = 45565
>>> 'You are working with {lang}. Please refer {noErr:x} error.'.format( 
... lang=lang, noErr=noErr)
'You are working with Python. Please refer 0xb1fd error.'

3) String Formatting using f-Strings (Python 3.6+)

It is also called as String Interpolation.

Note: f-string formatting approach is new. And it only works with the Python 3 having version 3.6 or higher.

>>> lang = 'Python'
>>> f'You are working with {lang}.'
You are working with Python.

How to Evaluate Expression in Python String Formatting?

You can also evaluate mathematical operations inside the f-string. It is more like embedding Python expressions inside the string to evaluate and print the result.

>>> p = 11
>>> q = 9
>>> f'Addition of two number is {p + q} and multiplication is {p * q}.'
Addition of two number is 20 and multiplication is 99.'

If you need to evaluate numerical data types expression and substitute result into the string, use this method.

4) Template Strings (Standard Library)

So another approach you can use and it is called as a template string. You need to import the Template module from a string.

First, make the template object using Template(). You can format the substitution variable names by prefixing $ sign. And then substitute the value for the variable.

>>> name = Alice
>>> from string import Template
>>> t = Template('My name is $name.')
>>> t.substitute(name=name)
'My name is Alice.'

That’s it all from Python string formatting tutorial. If you give an attention and try to run commands for each formatting approach, this topic is not much difficult.

Other Python String Tutorials:

  • Reverse String in Python using Extended Slice Syntax
  • Get all the Permutations of String

You can keep this string formatting list handy and use it as per your requirement.

Let me know your opinion using different string formatting. Which formatting do you prefer? Write your experience in the comment.

Python Interview Questions eBook

Pythonpython string
Aniruddha Chaudhari
I am complete Python Nut, love Linux and vim as an editor. I hold a Master of Computer Science from NIT Trichy. I dabble in C/C++, Java too. I keep sharing my coding knowledge and my own experience on CSEstack.org portal.

Your name can also be listed here. Got a tip? Submit it here to become an CSEstack author.

Leave a Reply Cancel reply

Basic Python Tutorial

  1. Python- Tutorial Overview
  2. Python- Applications
  3. Python- Setup on Linux
  4. Python- Setup on Windows
  5. Python- Basic Syntax
  6. Python- Variable Declaration
  7. Python- Numeric Data Types
  8. Python- NoneType
  9. Python- if-else/elif
  10. Python- for/while else
  11. Python- User Input
  12. Python- Multiline User Input
  13. Python- String Formatting
  14. Python- Find Substring in String
  15. Python- Bitwise Operators
  16. Python- Range Function
  17. Python- List
  18. Python- List Vs Tuple
  19. Python- Compare Two Lists
  20. Python- Sorting List
  21. Python- Delete Element from List
  22. Python- Dictionary
  23. Python- ‘is’ vs ‘==’
  24. Python- Mutable vs Immutable
  25. Python- Generator & Yield
  26. Python- Fibonacci Generator
  27. Python- Assert Statement
  28. Python- Exception Handling 
  29. Python- RegEx
  30. Python- Lambda Function
  31. Python- Installing Modules
  32. Python- Important Modules
  33. Python- Find all Installed Modules
  34. PyCharm- IDE setup
  35. Python- File Handling
  36. Python- Monkey Patching
  37. Python- Decorators
  38. Python- Instance vs Static vs Class Method
  39. Python- Name Mangling
  40. Python- Working with GUI
  41. Python- Read Data from Web URL
  42. Python- Memory Management
  43. Python- Virtual Environment
  44. Python- Calling C Function

Python Exercise

  1. Python- Tricky Questions
  2. Python- Interview Questions (60+)
  3. Python- Project Ideas (45+)
  4. Python- MCQ Test Online
  5. Python- Coding Questions (50+)
  6. Python- Competitive Coding Questions (20+)

Python String

  1. Reverse the String
  2. Permutations of String
  3. Padding Zeros to String/Number

Python List

  1. Randomly Select Item from List
  2. Find Unique Elements from List
  3. Are all Elements in List Same?

Python Dictionary

  1. Set Default Value in Dictionary
  2. Remove all 0 from a dictionary

File Handling

  1. Python- Read CSV File into List
  2. Check if the File Exist in Python
  3. Find Longest Line from File

Compilation & Byte Code

  1. Multiple Py Versions on System
  2. Convert .py file .pyc file
  3. Disassemble Python Bytecode

Algorithms

  1. Sorting- Selection Sort
  2. Sorting- Quick Sort

Other Python Articles

  1. Clear Py Interpreter Console
  2. Can I build Mobile App in Python?
  3. Extract all the Emails from File
  4. Python Shell Scripting

© 2022 – CSEstack.org. All Rights Reserved.

  • Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard