11 советов и хитростей на Python

Мы уже писали статью о 16 полезных фактах о программировании на Python, а сегодня речь пойдет о хитростях, которые вы можете применять в своей разработке.

Python — один из самых предпочитаемых языков. Его краткость и высокая читабельность делают его таким популярным среди всех программистов.

Итак, вот несколько советов и приемов, которые вы можете использовать для разработки на Python.

1. Обмен двух чисел на месте.

x, y = 10, 20
print(x, y) 
x, y = y, x 
print(x, y) 

Результат:

10 20
20 10

2. Перевернуть строку в Python

a ="Pythonist"
print("Reverse is", a[::-1])

Результат:

Reverse is tsinohtyP

3. Создание одной строки из всех элементов в списке

a = ["I", "am", "Pythonist"] 
print(" ".join(a)) 

Результат:

I am Pythonist

4. Цепочка из операторов сравнения.

n = 10
result = 1 < n < 20
print(result) 
result = 1 > n <= 9
print(result) 

Результат:

True
False

5. Печать на экран пути к исходному файлу импортируемых модулей.

import os;
import socket;

print(os)
print(socket)

Результат:

<module 'os' from '/usr/lib/python3.7/os.py'>
<module 'socket' from '/usr/lib/python3.7/socket.py'>

6. Использование Enums в Python.

class Animal: 
    CAT, DOG, COW, CAT = range(4)

print(Animal.CAT)
print(Animal.DOG) 
print(Animal.COW)
print(Animal.CAT) 

Результат:

3
1
2
3

7. Возврат нескольких значений из функций.

def x(): 
    return 1, 2, 3, 4
a, b, c, d = x() 
print(a, b, c, d) 

Результат:

1 2 3 4

8. Поиск наиболее часто встречающегося значение в списке.

test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4]
print(max(set(test), key=test.count))

Результат:

4

9. Проверка использованной памяти объектом.

import sys
x = 1
print(sys.getsizeof(x))

Результат:

28

10. Печать строки N раз.

n = 3;
a ="Pythonist";
print(a * n);

Результат:

PythonistPythonistPythonist

11. Проверка, являются ли два слова анаграммами

from collections import Counter
def is_anagram(str1, str2):
 return Counter(str1) == Counter(str2)


print(is_anagram('python', 'nythop'))
print(is_anagram('python', 'cython')) 

Результат:

True
False