The readability and simplicity of Python are the two main reasons for its popularity. This article introduces 20 commonly used Python techniques to improve the readability of the code and help you save a lot of time. You can refer to it if you need it.
The readability and simplicity of Python are the two main reasons for its popularity. This article introduces 20 commonly used Python tips to improve the readability of your code and save you a lot of time. The following tips will be used in your daily life Very useful in coding exercises.
1. String reverse
Reverse a string using Python slicing:
1 2 3 4 5 6 7 8 9 |
# Reversing a string using slicing my_string = "ABCDE" reversed_string = my_string[:: - 1 ] print (reversed_string) # Output # EDCBA |
2. Capitalize the first letter of each word
Use the title function method:
1 2 3 4 5 6 7 8 9 |
my_string = "my name is chaitanya baweja" # using the title() function of string class new_string = my_string.title() print (new_string) # Output # My Name Is Chaitanya Baweja |
3. String find unique elements
Find unique elements of a string using the concept of a set:
1 2 3 4 5 6 7 8 9 10 11 12 |
my_string = "aavvccccddddeee" # converting the string to a set temp_set = set (my_string) # stitching set into a string using join new_string = ''.join(temp_set) print (new_string) # output # cdvae |
4. Repeatedly print strings and lists n times
You can print a string or list multiple times using the multiplication symbol (*):
1 2 3 4 5 6 7 8 9 10 |
n = 3 # number of repetitions my_string = "abcd" my_list = [ 1 , 2 , 3 ] print (my_string * n) # abcdabcdabcd print (my_list * n) # [1,2,3,1,2,3,1,2,3] |
5. List generation
1 2 3 4 5 6 7 8 |
# Multiplying each element in a list by 2 original_list = [ 1 , 2 , 3 , 4 ] new_list = [ 2 * x for x in original_list] print (new_list) # [2,4,6,8] |
6. Variable exchange
1 2 3 4 5 6 7 |
a = 1 b = 2 a, b = b, a print (a) # 2 print (b) # 1 |
7. Split the string into a list of substrings
Use the .split() function:
1 2 3 4 5 6 7 8 9 10 |
string_1 = "My name is Chaitanya Baweja" string_2 = "sample/ string 2" # default separator ' ' print (string_1.split()) # ['My', 'name', 'is', 'Chaitanya', 'Baweja'] # defining separator as '/' print (string_2.split( '/' )) # ['sample', ' string 2'] |
8. Combine multiple strings into one string
1 2 3 4 5 6 7 |
list_of_strings = [ 'My' , 'name' , 'is' , 'Chaitanya' , 'Baweja' ] # Using join with the comma separator print ( ',' .join(list_of_strings)) # Output # My,name,is,Chaitanya,Baweja |
9. Check if a string is a palindrome
1 2 3 4 5 6 7 8 9 |
my_string = "abcba" if my_string = = my_string[:: - 1 ]: print ( "palindrome" ) else : print ( "not palindrome" ) # Output # palindrome |
10. Count the number of elements in a list
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# finding frequency of each element in a list from collections import Counter my_list = [ 'a' , 'a' , 'b' , 'b' , 'b' , 'c' , 'd' , 'd' , 'd' , 'd' , 'd' ] count = Counter(my_list) # defining a counter object print (count) # Of all elements # Counter({'d': 5, 'b': 3, 'a': 2, 'c': 1}) print (count[ 'b' ]) # of individual element # 3 print (count.most_common( 1 )) # most frequent element # [('d', 5)] |
11. Determine whether the two strings are Anagrams
The meaning of Anagrams is that in the two words, each English word (excluding capital and lowercase) appears the same number of times, and the Counter class is used to determine whether the two strings are Anagrams.
1 2 3 4 5 6 7 8 9 10 11 12 |
from collections import Counter str_1, str_2, str_3 = "acbde" , "abced" , "abcda" cnt_1, cnt_2, cnt_3 = Counter(str_1), Counter(str_2), Counter(str_3) if cnt_1 = = cnt_2: print ( '1 and 2 anagram' ) if cnt_1 = = cnt_3: print ( '1 and 3 anagram' ) # output # 1 and 2 anagram |
12. Use try-except-else-block module
except get exception handling:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
a, b = 1 , 0 try : print (a / b) # exception raised when b is 0 except ZeroDivisionError: print ( "division by zero" ) else : print ( "no exceptions raised" ) finally : print ( "Run this always" ) # output # division by zero # Run this always |
13. Use the enumeration function to get the key/value pair
1 2 3 4 5 6 7 8 9 10 |
my_list = [ 'a' , 'b' , 'c' , 'd' , 'e' ] for index, value in enumerate (my_list): print ( '{0}: {1}' . format (index, value)) # 0: a # 1: b # 2: c # 3: d # 4: e |
14. Check memory usage of objects
1 2 3 4 5 6 7 8 |
import sys num = 21 print (sys.getsizeof(num)) # In Python 2, 24 # In Python 3, 28 |
15. Merge Dictionaries
1 2 3 4 5 6 7 8 |
dict_1 = {
'apple' : 9 , 'banana' : 6 } dict_2 = {
'banana' : 4 , 'orange' : 8 } combined_dict = {
* * dict_1, * * dict_2} print (combined_dict) # Output # {'apple': 9, 'banana': 4, 'orange': 8} |
16. Calculate the time it takes to execute a piece of code
Use the time class to calculate the time it takes to run a piece of code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import time start_time = time.time() # Code to check follows for i in range ( 10 * * 5 ): a, b = 1 , 2 c = a + b # Code to check ends end_time = time.time() time_taken_in_micro = (end_time - start_time) * ( 10 * * 6 ) print (time_taken_in_micro) # output # 18770.217895507812 |
17. List Expansion
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
from iteration_utilities import deepflatten # if you only have one depth nested_list, use this def flatten(l): return [item for sublist in l for item in sublist] l = [[ 1 , 2 , 3 ],[ 3 ]] print (flatten(l)) # [1, 2, 3, 3] # if you don't know how deep the list is nested l = [[ 1 , 2 , 3 ],[ 4 ,[ 5 ],[ 6 , 7 ]],[ 8 ,[ 9 ,[ 10 ]]]] print ( list (deepflatten(l, depth = 3 ))) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] |
18. List sampling
1 2 3 4 5 6 7 8 |
import random my_list = [ 'a' , 'b' , 'c' , 'd' , 'e' ] num_samples = 2 samples = random.sample(my_list,num_samples) print (samples) # [ 'a', 'e'] this will have any 2 random values |
19. Digitization
Convert an integer to a list of numbers
1 2 3 4 5 6 7 8 9 10 11 12 13 |
num = 123456 # using map list_of_digits = list ( map ( int , str (num))) print (list_of_digits) # [1, 2, 3, 4, 5, 6] # using list comprehension list_of_digits = [ int (x) for x in str (num)] print (list_of_digits) # [1, 2, 3, 4, 5, 6] |
20. Check the uniqueness of list elements
Check whether each element in a list is unique:
1 2 3 4 5 6 7 8 9 10 11 |
def unique(l): if len (l) = = len ( set (l)): print ( "All elements are unique" ) else : print ( "List has duplicates" ) unique([ 1 , 2 , 3 , 4 ]) # All elements are unique unique([ 1 , 1 , 2 , 3 ]) # List has duplicates |
The above are the details of the 20 common Python skills you need to master.
Click to get
50G+ learning video tutorials
100+Python elementary, intermediate and advanced e-books