The Top Hidden Features in Python - Maybe you don't know

The Top Hidden Features in Python - Maybe you don't know

In this post, we'll learn about hidden Python features that Python beginners may find them useful.

Learning is never-ending. You will never finish learning how to program in Python. You might constantly discover new features in Python that are useful, and you might be overwhelmed by the amount there is to learn.

There does not exist a single book or website that contains everything you need to know about Python. Not even the official documentation. The possibility of Python is basically infinite.

I have been coding in Python for years, and have been discovering interesting Python features that are quite unique. Things that you would not be able to find in other programming languages. Here are 4 hidden Python features that Python beginners may find them useful.

1. For-else Loop

Are you familiar with conditional statements in Python?

while loops, tick.
for loops, easy.
if else clauses, you nailed it.

What about for else clauses? What?

def test(nums):
    for i in nums:
        if i == 0: # if the condition is satisfied, it hits break and the else block will not run
            print('There is a 0.')
            break
    else:
        print('There are no 0s.')
        
test([1,2,3,0]) # There is a 0.
test([1,2,3])   # There are no 0s.

The codes in the else block will run only if the for loop is completed without encountering a break statement. If you do not know what break is, then check out the following article for more information.

So how is this for-else loop useful? Maybe the user has 3 attempts to enter their correct password in a for _ in range(3): loop, and only the correct password activates the break statement. The else block contains the consequence of entering wrong passwords in 3 consecutive wrong guesses, for example locking the user from using the system.

2. Comparison Operator Chaining

You want to check if the value in a is within the range of 0 and 100, so you would make two comparisons and combine them using and. 0 <= a and a <= 100. This is easy.

But you can chain the comparisons and write them in a more human-readable and intuitive way 0 <= a <= 100. The interpreter would split them and read the comparison operations like 0 <= a and a <= 100.

a = 25
0 <= a <= 100       # True
0 <= a and a <= 100 # True
# The two expressions above are equivalent in Python

You can also make the chain longer, such as 0 < a < 10 < b < 100.

3. Extended Slices

We can slice a list a using the syntax a[start:stop:step], with an optional third step argument. It reads slicing a portion of the sequence that starts at start, ends at stop, with a step size of step. The step size has to be an integer, and can be negative.

a = list(range(10))
print(a[::2])   # [0, 2, 4, 6, 8]
print(a[3::-1]) # [3, 2, 1, 0]

We can reverse a list simply by a[::-1] by setting the step argument as -1. The step is 1 by default if not specified, which implies no element skipping or list reversing.

4. Value Swapping

How do you swap values of two objects in Python? Easy! You just create a temporary object temp, just like how you would have done it in other languages.

# Standard way to swap values of two objects in other languages
temp = a
a = b
b = temp

But this is not very readable and far from elegant. But you could actually swap the values with ease using one simple line in Python.

# Standard Python way to swap values
b, a = a, b

Why does it work? The interpreter first evaluated the right-hand side and created a tuple (a,b) in the memory. The left-hand side is then evaluated where two elements in the tuple are unpacked and assigned to b and a respectively. It essentially swapped the objects assigned to a and b.

Thank you for reading!

Do you find those features interesting and useful? Leave a comment below!

Top Python Development Companies | Hire Python Developers

Top Python Development Companies | Hire Python Developers

After analyzing clients and market requirements, TopDevelopers has come up with the list of the best Python service providers. These top-rated Python developers are widely appreciated for their professionalism in handling diverse projects. When...

After analyzing clients and market requirements, TopDevelopers has come up with the list of the best Python service providers. These top-rated Python developers are widely appreciated for their professionalism in handling diverse projects. When you look for the developer in hurry you may forget to take note of review and ratings of the company's aspects, but we at TopDevelopers have done a clear analysis of these top reviewed Python development companies listed here and have picked the best ones for you.

List of Best Python Web Development Companies & Expert Python Programmers.

Guide to Python Programming Language

Guide to Python Programming Language

Guide to Python Programming Language

Description
The course will lead you from beginning level to advance in Python Programming Language. You do not need any prior knowledge on Python or any programming language or even programming to join the course and become an expert on the topic.

The course is begin continuously developing by adding lectures regularly.

Please see the Promo and free sample video to get to know more.

Hope you will enjoy it.

Basic knowledge
An Enthusiast Mind
A Computer
Basic Knowledge To Use Computer
Internet Connection
What will you learn
Will Be Expert On Python Programming Language
Build Application On Python Programming Language

Python Programming Tutorials For Beginners

Python Programming Tutorials For Beginners

Python Programming Tutorials For Beginners

Description
Hello and welcome to brand new series of wiredwiki. In this series i will teach you guys all you need to know about python. This series is designed for beginners but that doesn't means that i will not talk about the advanced stuff as well.

As you may all know by now that my approach of teaching is very simple and straightforward.In this series i will be talking about the all the things you need to know to jump start you python programming skills. This series is designed for noobs who are totally new to programming, so if you don't know any thing about

programming than this is the way to go guys Here is the links to all the videos that i will upload in this whole series.

In this video i will talk about all the basic introduction you need to know about python, which python version to choose, how to install python, how to get around with the interface, how to code your first program. Than we will talk about operators, expressions, numbers, strings, boo leans, lists, dictionaries, tuples and than inputs in python. With

Lots of exercises and more fun stuff, let's get started.

Download free Exercise files.

Dropbox: https://bit.ly/2AW7FYF

Who is the target audience?

First time Python programmers
Students and Teachers
IT pros who want to learn to code
Aspiring data scientists who want to add Python to their tool arsenal
Basic knowledge
Students should be comfortable working in the PC or Mac operating system
What will you learn
know basic programming concept and skill
build 6 text-based application using python
be able to learn other programming languages
be able to build sophisticated system using python in the future

To know more: