Im Folgenden finden Sie einige praktische Python-Tipps und Tools, die ich in den letzten Jahren gesammelt habe. Ich hoffe, dass sie Ihnen hilfreich sein werden.
x = 6 y = 5 x, y = y, x print x >>> 5 print y >>> 6
print "Hello" if True else "World" >>> Hello
unten Der letzte Weg ist cool, wenn man zwei Objekte unterschiedlichen Typs bindet.
nfc = ["Packers", "49ers"] afc = ["Ravens", "Patriots"] print nfc + afc >>> ['Packers', '49ers', 'Ravens', 'Patriots'] print str(1) + " world" >>> 1 world print `1` + " world" >>> 1 world print 1, "world" >>> 1 world print nfc, 1 >>> ['Packers', '49ers'] 1
#除后向下取整 print 5.0//2 >>> 2 # 2的5次方 print 2**5 >> 32
Achten Sie auf die Division von Gleitkommazahlen
print .3/.1 >>> 2.9999999999999996 print .3//.1 >>> 2.0
Dies ist einer von die Dinge, die ich in vielen Sprachen gesehen habe. Es gibt nur wenige so großartige und einfache Methoden
x = 2 if 3 > x > 1: print x >>> 2 if 1 0: print x >>> 2
Zwei Listen gleichzeitig iterieren
nfc = ["Packers", "49ers"] afc = ["Ravens", "Patriots"] for teama, teamb in zip(nfc, afc): print teama + " vs. " + teamb >>> Packers vs. Ravens >>> 49ers vs. Patriots
Indizierte Listeniteration
teams = ["Packers", "49ers", "Ravens", "Patriots"] for index, team in enumerate(teams): print index, team >>> 0 Packers >>> 1 49ers >>> 2 Ravens >>> 3 Patriots
Bei einer gegebenen Liste können wir die gerade Listenmethode auswählen:
numbers = [1,2,3,4,5,6] even = [] for number in numbers: if number%2 == 0: even.append(number)
verwandelt sich in Folgendes:
numbers = [1,2,3,4,5,6] even = [number for number in numbers if number%2 == 0]
Nicht wahr? großartig, haha.
Ähnlich wie Listenverständnisse können Wörterbücher die gleiche Aufgabe erfüllen:
teams = ["Packers", "49ers", "Ravens", "Patriots"] print {key: value for value, key in enumerate(teams)} >>> {'49ers': 1, 'Ravens': 2, 'Patriots': 3, 'Packers': 0}
Die Werte einer Liste initialisieren
items = [0]*3 print items >>> [0,0,0]
Listenkonvertierung Element aus Wörterbuch abrufen für
Zeichenfolgeteams = ["Packers", "49ers", "Ravens", "Patriots"] print ", ".join(teams) >>> 'Packers, 49ers, Ravens, Patriots'
Ich gebe zu, Try/Except-Code ist nicht elegant, aber hier ist eine einfache Möglichkeit, probieren Sie es aus Im Wörterbuch nach Schlüssel suchen. Wenn der entsprechende Wert nicht gefunden wird, wird der zweite Parameter verwendet, um seinen Variablenwert festzulegen. Ersetzen Sie
data = {'user': 1, 'name': 'Max', 'three': 4} try: is_admin = data['admin'] except KeyError: is_admin = False
wie folgt:
data = {'user': 1, 'name': 'Max', 'three': 4} is_admin = data.get('admin', False)
Manchmal benötigen Sie nur eine Teilmenge von Elementen in einer Liste, hier sind einige Teilmengen einer Listenmengenmethode.
x = [1,2,3,4,5,6] #前3个 print x[:3] >>> [1,2,3] #中间4个 print x[1:5] >>> [2,3,4,5] #最后3个 print x[3:] >>> [4,5,6] #奇数项 print x[::2] >>> [1,3,5] #偶数项 print x[1::2] >>> [2,4,6]
Vor einiger Zeit bewarb Jeff Atwood eine einfache Programmierübung namens FizzBuzz. Die Frage wurde wie folgt zitiert:
Schreiben Sie ein Programm, das die Zahlen 1 bis 100 ausgibt und die Zahl durch „Fizz“ für Vielfache von 3, „Buzz“ für Vielfache von 5 und „FizzBuzz“ für Zahlen, die beide Vielfache von 3 und 5 sind, ersetzt. Hier ist eine kurze, interessante Möglichkeit, dieses Problem zu lösen:for x in range(101): print"fizz"[x%3*4::]+"buzz"[x%5*4::] or x
from collections import Counter print Counter("hello") >>> Counter({'l': 2, 'h': 1, 'e': 1, 'o': 1})
from itertools import combinations teams = ["Packers", "49ers", "Ravens", "Patriots"] for game in combinations(teams, 2): print game >>> ('Packers', '49ers') >>> ('Packers', 'Ravens') >>> ('Packers', 'Patriots') >>> ('49ers', 'Ravens') >>> ('49ers', 'Patriots') >>> ('Ravens', 'Patriots') False == True
Das obige ist der detaillierte Inhalt vonUnverzichtbare Python-Tipps für Anfänger. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!