Zusammenfassung über den pythonischen Stil (2): Anderes Schaben

Überblick

Ich habe nach Python-Code-Konventionen gesucht. Teil 1 hat PEP8 auf meine eigene Weise zusammengefasst. Hier ist eine Zusammenfassung des Inhalts anderer Quellen. Ich wähle, was ich für wahr halte.

Die Seite, die ich gesehen habe

The Hitchhiker's Guide to Python Be Pythonic Code Like a Pythonista: Idiomatic Python

Allgemeines

Betonung auf Klarheit

Vermeiden Sie schwarze Magie so weit wie möglich und machen Sie den Code leicht verständlich BAD

def make_complex(*args):
    x, y = args
    return dict(**locals())

GOOD

def make_complex(x, y):
    return {'x': x, 'y': y}

Typen und Notizen von Funktionsvariablen

We are all responsible users Es scheint, dass Python kein privates Schlüsselwort hat. Was die Kultur betrifft, so scheint es, dass jede Person für die Beschichtung verantwortlich ist. Es gibt keine Schlüsselwörter, aber Konventionen. Methoden, die Sie nicht als öffentlich bezeichnen möchten, sollten das Präfix _ haben

Öffnen Sie die Datei mit Mit

Sie können sicher sein, dass die Datei geschlossen wird, egal was passiert

# 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)]

Recommended Posts

Zusammenfassung über den pythonischen Stil (2): Anderes Schaben
Zusammenfassung zum pythonischen Stil (1): PEP8
Über Twitter Scraping
Zusammenfassung über Python3 + OpenCV3
Python Crawling & Scraping Kapitel 4 Zusammenfassung