Heim  >  Artikel  >  Backend-Entwicklung  >  Fassen Sie einige Python-Programmierkenntnisse zusammen

Fassen Sie einige Python-Programmierkenntnisse zusammen

伊谢尔伦
伊谢尔伦Original
2017-06-28 13:17:141375Durchsuche

In diesem Artikel werden hauptsächlich einige Programmierkenntnisse für Python-Anfänger vorgestellt. Sie basieren alle auf einigen grundlegenden Vorschlägen für Programmiergewohnheiten. Freunde in Not können sich auf den

Austausch Variable

x = 6
y = 5
 
x, y = y, x
 
print x
>>> 5
print y
>>> 6

if-Anweisung inline

print "Hello" if True else "World"
>>> Hello

Verbindung

Der letzte Weg unten ist sehr 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

Zahlenkenntnisse

#除后向下取整
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

Numerischer Vergleich

Dies ist eine der wenigen

mehrsprachigens, bei denen ich eine so tolle und einfache Methode gesehen habe

x = 2
if 3 > x > 1:
 print x
>>> 2
if 1 < x > 0:
 print x
>>> 2

Über 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

Über indizierte Listen iterieren

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

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)
konvertiert in Folgendes:


numbers = [1,2,3,4,5,6]
even = [number for number in numbers if number%2 == 0]
Ist es nicht 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)}
>>> {&#39;49ers&#39;: 1, &#39;Ravens&#39;: 2, &#39;Patriots&#39;: 3, &#39;Packers&#39;: 0}

Liste initialisieren Konvertieren Sie die Werteliste

items = [0]*3
print items
>>> [0,0,0]

in einen String

teams = ["Packers", "49ers", "Ravens", "Patriots"]
print ", ".join(teams)
>>> &#39;Packers, 49ers, Ravens, Patriots&#39;
aus dem Wörterbuch. Holen Sie sich das Element in

Ich gebe zu, dass der Try/Except-Code nicht elegant ist, aber hier ist eine einfache Methode: Versuchen Sie, den Schlüssel im Wörterbuch zu finden. Wenn der entsprechende Wert nicht gefunden wird, wird der zweite Parameter verwendet auf seinen Variablenwert gesetzt werden.


Ersetzen Sie so:
data = {&#39;user&#39;: 1, &#39;name&#39;: &#39;Max&#39;, &#39;three&#39;: 4}
try:
 is_admin = data[&#39;admin&#39;]
except KeyError:
 is_admin = False
1


data = {&#39;user&#39;: 1, &#39;name&#39;: &#39;Max&#39;, &#39;three&#39;: 4}
is_admin = data.get(&#39;admin&#39;, False)
Eine Teilmenge einer Liste abrufen

Manchmal reicht es einfach Es gibt einige Möglichkeiten, eine Teilmenge einer Liste zu erhalten.

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]
60 Zeichen zum Lösen von FizzBuzz


Vor einiger Zeit bewarb Jeff Atwood eine einfache Programmierübung namens FizzBuzz, in der die Frage

zitiert wurde

Wie folgt: Schreiben Sie ein Programm zum Drucken der Zahlen 1 bis 100. Vielfache von 3 geben „Fizz“ aus, um diese Zahl zu ersetzen. Vielfache von 5 geben „Buzz“ aus 5 Digitaldruck „FizzBuzz“.

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
Sammlung

Zusätzlich zur integrierten Python-Funktion

Zusätzlich zu den Datentypen

umfasst das Erfassungsmodul auch einige spezielle Anwendungsfälle. Counter ist in manchen Situationen sehr praktisch. 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({&#39;l&#39;: 2, &#39;h&#39;: 1, &#39;e&#39;: 1, &#39;o&#39;: 1})
Iterationstools

Wie die Sammlungsbibliothek gibt es auch eine Bibliothek namens itertools, mit der bestimmte Probleme effizient gelöst werden können. Ein Anwendungsfall besteht darin, alle Kombinationen zu finden, was Ihnen alle möglichen Kombinationen von Elementen in einer Gruppe anzeigt.


from itertools import combinations
teams = ["Packers", "49ers", "Ravens", "Patriots"]
for game in combinations(teams, 2):
 print game
>>> (&#39;Packers&#39;, &#39;49ers&#39;)
>>> (&#39;Packers&#39;, &#39;Ravens&#39;)
>>> (&#39;Packers&#39;, &#39;Patriots&#39;)
>>> (&#39;49ers&#39;, &#39;Ravens&#39;)
>>> (&#39;49ers&#39;, &#39;Patriots&#39;)
>>> (&#39;Ravens&#39;, &#39;Patriots&#39;)
Falsch == Wahr

Dies ist eher eine interessante Sache als eine praktische Technik. In Python sind True und False globale Variablen, also:


Das obige ist der detaillierte Inhalt vonFassen Sie einige Python-Programmierkenntnisse zusammen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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