Unverzichtbare Python-Tipps für Anfänger

高洛峰
Freigeben: 2017-03-17 15:51:42
Original
988 Leute haben es durchsucht

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.

AustauschVariablen

x = 6
y = 5
x, y = y, x
print x
>>> 5
print y
>>> 6
Nach dem Login kopieren

if-Anweisung in der Zeile

print "Hello" if True else "World"
>>> Hello
Nach dem Login kopieren

beitreten

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
Nach dem Login kopieren

Zahlenkenntnisse

#除后向下取整
print 5.0//2
>>> 2
# 2的5次方
print 2**5
>> 32
Nach dem Login kopieren

Achten Sie auf die Division von Gleitkommazahlen

print .3/.1
>>> 2.9999999999999996
print .3//.1
>>> 2.0
Nach dem Login kopieren

Numerischer Vergleich

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
Nach dem Login kopieren

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
Nach dem Login kopieren

Indizierte Listeniteration

teams = ["Packers", "49ers", "Ravens", "Patriots"]
for index, team in enumerate(teams):
    print index, team
>>> 0 Packers
>>> 1 49ers
>>> 2 Ravens
>>> 3 Patriots
Nach dem Login kopieren

Listenverständnis

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)
Nach dem Login kopieren

verwandelt sich in Folgendes:

numbers = [1,2,3,4,5,6]
even = [number for number in numbers if number%2 == 0]
Nach dem Login kopieren

Nicht wahr? großartig, haha.

Wörterbuchverständnisse

Ä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}
Nach dem Login kopieren

Die Werte einer Liste initialisieren

items = [0]*3
print items
>>> [0,0,0]
Nach dem Login kopieren

Listenkonvertierung Element aus Wörterbuch abrufen für

Zeichenfolge
teams = ["Packers", "49ers", "Ravens", "Patriots"]
print ", ".join(teams)
>>> 'Packers, 49ers, Ravens, Patriots'
Nach dem Login kopieren

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
Nach dem Login kopieren

wie folgt:

data = {'user': 1, 'name': 'Max', 'three': 4}
is_admin = data.get('admin', False)
Nach dem Login kopieren

Holen Sie sich eine Teilmenge einer Liste

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]
Nach dem Login kopieren

60 Zeichen zum Lösen von FizzBuzz

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
Nach dem Login kopieren
Sammlung

Zusätzlich zum in Python integrierten

Datentyp, Im Sammlungsmodul sind auch einige spezielle Anwendungsfälle enthalten, und Counter ist in manchen Situationen sehr nützlich. Wenn Sie am diesjährigen Facebook HackerCup teilgenommen haben, können Sie sogar feststellen, dass es praktisch ist.

from collections import Counter
print Counter("hello")
>>> Counter({'l': 2, 'h': 1, 'e': 1, 'o': 1})
Nach dem Login kopieren
Iterationstools

Wie die Sammlungsbibliothek gibt es auch eine Bibliothek namens itertools, mit der bestimmte Probleme effizient gelöst werden können. Einer der Anwendungsfälle besteht darin, alle Kombinationen zu finden, die Ihnen alle unmöglichen Kombinationen von Elementen in einer Gruppe anzeigen können

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
Nach dem Login kopieren
Dies ist eine sehr interessante Sache im Vergleich zur praktischen Technologie in Python, True und False sind globale Variablen, also:

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage