Inhaltsverzeichnis
if-Anweisung in der Zeile " >if-Anweisung in der Zeile
beitreten
Zahlenkenntnisse
Numerischer Vergleich
Listenverständnis
Wörterbuchverständnisse
Holen Sie sich eine Teilmenge einer Liste
60 Zeichen zum Lösen von FizzBuzz
Heim Backend-Entwicklung Python-Tutorial Unverzichtbare Python-Tipps für Anfänger

Unverzichtbare Python-Tipps für Anfänger

Mar 17, 2017 pm 03:51 PM
python技巧

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!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie löste ich das Problem der Berechtigungen beim Betrachten der Python -Version in Linux Terminal? Wie löste ich das Problem der Berechtigungen beim Betrachten der Python -Version in Linux Terminal? Apr 01, 2025 pm 05:09 PM

Lösung für Erlaubnisprobleme beim Betrachten der Python -Version in Linux Terminal Wenn Sie versuchen, die Python -Version in Linux Terminal anzuzeigen, geben Sie Python ein ...

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden? Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden? Apr 02, 2025 am 07:18 AM

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer -Anfänger für Programmierungen? Wenn Sie nur 10 Stunden Zeit haben, um Computer -Anfänger zu unterrichten, was Sie mit Programmierkenntnissen unterrichten möchten, was würden Sie dann beibringen ...

Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet? Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet? Apr 02, 2025 am 07:15 AM

Wie kann man nicht erkannt werden, wenn Sie Fiddlereverywhere für Man-in-the-Middle-Lesungen verwenden, wenn Sie FiddLereverywhere verwenden ...

Wie kann ich die gesamte Spalte eines Datenrahmens effizient in einen anderen Datenrahmen mit verschiedenen Strukturen in Python kopieren? Wie kann ich die gesamte Spalte eines Datenrahmens effizient in einen anderen Datenrahmen mit verschiedenen Strukturen in Python kopieren? Apr 01, 2025 pm 11:15 PM

Bei der Verwendung von Pythons Pandas -Bibliothek ist das Kopieren von ganzen Spalten zwischen zwei Datenrahmen mit unterschiedlichen Strukturen ein häufiges Problem. Angenommen, wir haben zwei Daten ...

Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen ohne Serving_forver () an? Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen ohne Serving_forver () an? Apr 01, 2025 pm 10:51 PM

Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen an? Uvicorn ist ein leichter Webserver, der auf ASGI basiert. Eine seiner Kernfunktionen ist es, auf HTTP -Anfragen zu hören und weiterzumachen ...

Wie erstelle ich dynamisch ein Objekt über eine Zeichenfolge und rufe seine Methoden in Python auf? Wie erstelle ich dynamisch ein Objekt über eine Zeichenfolge und rufe seine Methoden in Python auf? Apr 01, 2025 pm 11:18 PM

Wie erstellt in Python ein Objekt dynamisch über eine Zeichenfolge und ruft seine Methoden auf? Dies ist eine häufige Programmieranforderung, insbesondere wenn sie konfiguriert oder ausgeführt werden muss ...

Wie löste ich Berechtigungsprobleme bei der Verwendung von Python -Verssionsbefehl im Linux Terminal? Wie löste ich Berechtigungsprobleme bei der Verwendung von Python -Verssionsbefehl im Linux Terminal? Apr 02, 2025 am 06:36 AM

Verwenden Sie Python im Linux -Terminal ...

Wie bekomme ich Nachrichtendaten, die den Anti-Crawler-Mechanismus von Investing.com umgehen? Wie bekomme ich Nachrichtendaten, die den Anti-Crawler-Mechanismus von Investing.com umgehen? Apr 02, 2025 am 07:03 AM

Verständnis der Anti-Crawling-Strategie von Investing.com Viele Menschen versuchen oft, Nachrichten von Investing.com (https://cn.investing.com/news/latest-news) zu kriechen ...

See all articles