20 common Python skills you need to master

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

Guess you like

Origin blog.csdn.net/ai520wangzha/article/details/131286028
Recommended