J'ai recherché des conventions de code python. Partie 1 a résumé PEP8 à ma manière. Voici un résumé du contenu d'autres sources. Je choisis ce que je pense être vrai.
The Hitchhiker's Guide to Python Be Pythonic Code Like a Pythonista: Idiomatic Python
Évitez autant que possible la magie noire et rendez le code facile à comprendre BAD
def make_complex(*args):
x, y = args
return dict(**locals())
GOOD
def make_complex(x, y):
return {'x': x, 'y': y}
We are all responsible users Il semble que python n'ait pas de mot clé privé. Quant à la culture, il semble que chaque personne soit responsable du revêtement. Il n'y a pas de mots clés, mais il y a des conventions. Les méthodes que vous ne voulez pas être dites publiques doivent avoir le préfixe _
Vous pouvez être assuré que le dossier sera fermé quoi qu'il arrive
# Bad
f = open('file.txt')
a = f.read()
print a
f.close()
# Good
with open('file.txt') as f:
for line in f:
print line
Tips
# Enumerate
for index, value in enumerate(pi_nums):
print(index, value)
# 1 3
# 2 1
# 3 4
# 4 1
# 5 5
# Zip
for p, f in zip(pi_nums, fibonacci_nums):
print(p, f)
# 3 1
# 1 1
# 4 2
# 1 3
# 5 5
#Unpacking after python3
a, *rest = [1, 2, 3]
# a = 1, rest = [2, 3]
a, *middle, c = [1, 2, 3, 4]
# a = 1, middle = [2, 3], c = 4
for _ in range(10):
print('Tasty')
a = [1] * 4
# a = [1, 1, 1, 1]
# WRONG
b = [[1] * 3] * 3
# b = [[1, 1, 1], [1, 1, 1], [1, 1, 1]]
# Because when
b[0][0] = 2
# b = [[2, 1, 1], [2, 1, 1], [2, 1, 1]]
# RIGHT
b = [[1] * 3 for _ in range(3)]