Then I decided to do a bit of research about Python improvements. Those 3.6, 3.7, 3.8 Python versions aren’t there for nothing, right?
After going through release notes, I found these neat tricks that I would like to share with you.
By reading this article, you’ll learn:
- How to format big integers more clearly
- A better way to work with file paths
- The proper way of string formating
1. Formatting big integers

Using Underscores in Numeric Literals. Image by Roman Orac
From Python 3.6 (and onwards) you can use underscores to make numbers easier to read. See PEP 515 for more details.
Let’s look at an example:
a = 1000000000 # Is variable a billion or 100 millions? # Let's use underscores to make it easier to read a = 1_000_000_000 # You can group numbers as you like b = 1_0_9_0
It also works with hexadecimal addresses and grouping bits.
# grouping hexadecimal addresses by words addr = 0xCAFE_F00D # grouping bits into nibbles in a binary literal flags = 0b_0011_1111_0100_1110
2. Pathlib
Working with paths can be challenging especially if your code needs to run on multiple operating systems.
Luckily for us, Python standard library has pathllib.
Let’s look at an example:
from pathlib import Path path = Path("some_folder") print(path) # output: some_folder # We can add more subfolders in a readable way path = path / "sub_folder" / "sub_sub_folder" print(path) # output: some_folder/sub_folder/sub_sub_folder # make path absolute print(path.resolve()) # output: /Users/r.orac/some_folder/sub_folter/sub_sub_folder
Despite using / sign as the separator to concatenate paths, pathlib makes it operating system agnostic, meaning it will also work on Windows OS.
Also read: Using Python And Pandas Datareader to Analyze Financial Data
3. Simplify string formatting

f-string formatting in Python. Image by Roman Orac
I’m used to using old school string formatting in Python:
person = 'Roman' exercise = 0 print("%d-times %s exercised during corona epidemic" % (exercise, person)) # output # 0-times Roman exercised during corona epidemic
Until recently, I didn’t know there is a better (more modern) way of string formatting in Python.
In Python 3.6, PEP 498 introduces Literal String Interpolation, which simplifies the string formatting.
We can rewrite the example above to:
person = 'roman' exercise = 0 print(f"{exercise}-times {person} exercised during corona epidemic") # output # 0-times Roman exercised during corona epidemic
A string prefixed with f is known as fstring.
fstrings even support math operations:
print(f"{exercise+1}-times {person} exercised during corona epidemic") # Output # '1-times roman exercised during corona epidemic'
But I didn’t exercise during the corona epidemic so adding +1 in the fstring would simply be a lie 😂
What about formatting float values?
f = 0.333333 print(f"this is f={f:.2f} rounded to 2 decimals") # Output this is f=0.33 rounded to 2 decimals
Conclusion
These Python tricks will make your code more concise and will make coding more enjoyable.
Many Python developers don’t know about these tricks — you’re not one of them anymore.
Before you go
Follow me on Twitter, where I regularly tweet about Data Science and Machine Learning.
Also read: Understanding Python's Collections Module
“3 Python Tricks That Will Improve Your Code”– Roman OracTweet