


30 Funktionen und Tricks der Python-Sprache, die Sie möglicherweise nicht kennen
Als ich angefangen habe, Python zu lernen, habe ich beschlossen, eine Liste häufig verwendeter „Tipps“ zu führen. Immer wenn ich einen Code sehe, der mich denken lässt: „Cool, das funktioniert!“ (zum Beispiel auf StackOverflow, in Open-Source-Software usw.), probiere ich ihn aus, bis ich ihn verstehe, und füge ihn dann der Liste hinzu . Dieser Beitrag ist Teil einer bereinigten Liste. Wenn Sie ein erfahrener Python-Programmierer sind, entdecken Sie möglicherweise einige, die Sie noch nicht kennen, obwohl Sie einige bereits kennen. Wenn Sie ein C-, C- oder Java-Programmierer sind, der Python lernt oder gerade erst mit dem Programmieren beginnt, werden Sie viele davon sehr nützlich finden, so wie ich es getan habe.
Jeder Trick oder jede Sprachfunktion kann nur anhand von Beispielen ohne übermäßige Erklärung überprüft werden. Obwohl ich versucht habe, die Beispiele klar zu formulieren, werden einige von ihnen je nach Vertrautheit dennoch etwas kompliziert aussehen. Wenn Sie sich also nach dem Betrachten des Beispiels nicht sicher sind, kann der Titel genügend Informationen liefern, um den detaillierten Inhalt über Google zu erhalten.
Die Liste ist nach Schwierigkeitsgrad sortiert, wobei häufig verwendete Sprachfunktionen und -techniken ganz vorne stehen.
1.30 Maximale und minimale Elemente (heapq.nlargest und heapq.nsmallest)
>>> a = [random.randint(0, 100) for __ in xrange(100)]
>>> heapq.nsmallest(5, a)
[3, 3, 5, 6, 8]
>>> heapq.nlargest(5, a)
[100, 100, 99, 98, 98]
1.31 Kartesisches Produkt (itertools.product)
>>> für p in itertools.product([1, 2 , 3], [4, 5]):
(1, 4)
(1, 5)
(2, 4)
(2, 5)
(3, 4)
(3, 5)
>>> für p in itertools.product([0, 1], wiederholen =4):
... print ''.join(str(x) for x in p)
...
0000
0001
0010
0011
0100 0
1001
1010
1011
1100
1101
1110
1111
1.32 Kombinationen und Ersetzungen von Kombinationen (itertools.combinations und itertools.combinations_with_replacement)
> >> für c in itertools.combinations([1, 2, 3, 4, 5], 3):
... print ''.join(str(x) for x in c)
...
123
124
125
134
135
145
234
235
245
345
>>> für c in itertools.combinations_with_replacement([1, 2, 3] , 2):
... print ''.join(str(x) for x in c)
...
11
12
13
22
23
33
1.33 Sorting(itertools.permutations)
>> > für p in itertools.permutations([1, 2, 3, 4]):
... print ''.join(str(x) for x in p)
. ..
1234
1243
1324
1342
1423
1432
2134
2143
2314
2341 🎜>
2413 2431 3124 3142 3214 3241 34123421 4123 4132 4213 4231 4312 43211.34 Link-Iteration (itertools.chain)>>> a = [1, 2, 3 , 4] >>> für p in itertools.chain(itertools. combinations(a, 2), itertools.combinations(a, 3)): ... print p ... (1, 2) (1, 3) (1, 4) (2, 3) (2, 4) (3 , 4) (1, 2, 3) (1, 2, 4) (1, 3, 4) (2 , 3, 4) >>> für Teilmenge in itertools.chain.from_iterable(itertools.combinations(a, n) für n im Bereich(len(a) 1)) .. Teilmenge drucken ... () (1 ,) (2,) (3, ) (4,) (1, 2) ( 1, 3) (1, 4) (2, 3) (2, 4) (3, 4) (1, 2, 3) (1, 2 , 4) (1, 3, 4) (2, 3, 4) (1, 2, 3, 4) 1.35 Zeilen nach gegebenem Wert gruppieren (itertools.groupby) >>> vom Operator import itemgetter >>> itertools importieren >>> mit open('contactlenses .csv', 'r') als Infile: ... data = [line.strip().split (',') für Zeile in Infile] ... >>> data = data[1:] >>> def print_data(rows): ... print 'n'.join('t'. join('{: ... >>> print_data( data)
jung Kurzsichtigkeit nein keine
jung Kurzsichtigkeit nein normal weich
jung kurzsichtig reduziert keine
jung Kurzsichtigkeit ja normal
jung hypermetrope nein reduziert keine
jung hypermetrop normal jung. hypermetropisch ja reduziert keine hypermetropisch normal schwer
präpresbyope Myopie reduziert
Präpresbyopie nein normal weich
Präpresbyopie ja reduziert keine schwer
präpresbyopisch hypermetrop nein reduziert keine
präpresbyopisch hypermetrop nein normal weich
präpresbyopisch ja reduziert keine
präpresbyope hypermetrope keine
Presbyopie Kurzsichtigkeit nein reduziert keine
Presbyopie Kurzsichtigkeit nein normal keine
Presbyopie Myopie ja reduziert keine
Presbyopie ja normal schwer
presbyopisch hypermetropisch nein keine
presbyope hypermetrop nein normal hypermetrop ja reduziert keine
presbyopisch hypermetrop ja normal keine
>>> data.sort(key=itemgetter(-1))
>>> für Wert, Gruppe in itertools.groupby(data, lambda r: r[-1]):
... print '-----------'
. .. print 'Group: ' value
... print_data(group)
...
-----------
Gruppe: schwer
jung kurzsichtig ja normal Hypermetropie ja normal schwer
präpresbyope normal hart
Presbyopie Kurzsichtigkeit ja normal hart
-----------
Gruppe: keine
jung kurzsichtig nein reduziert keine
jung Kurzsichtigkeit ja reduziert keine
jung hypermetrop nein keine
jung ja reduziert keine
präpresbyope nein keine
präpresbyope Myopie ja reduziert keine
präpresbyopisch hypermetropisch nein reduziert keine
präpresbyopisch hypermetropisch ja reduziert keine
präpresbyopisch hypermetropisch normal keine keine
Presbyopie Kurzsichtigkeit nein normal keine
Presbyopie Myopie ja reduziert keine
Presbyopie Hypermetropie reduziert keine
presbyopisch ja keine
presbyopisch hypermetropisch ja normal keine
----- ------
Gruppe: weich
junges Myope kein normales weiches
junges Hypermetrop
präpresbyope hypermetrope nein normale weiche nein normal weich

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Hadidb: Eine leichte, hochrangige skalierbare Python-Datenbank Hadidb (HadIDB) ist eine leichte Datenbank in Python mit einem hohen Maß an Skalierbarkeit. Installieren Sie HadIDB mithilfe der PIP -Installation: PipinstallHadIDB -Benutzerverwaltung erstellen Benutzer: createUser (), um einen neuen Benutzer zu erstellen. Die Authentication () -Methode authentifiziert die Identität des Benutzers. fromHadidb.operationImportUseruser_obj = user ("admin", "admin") user_obj.

Es ist unmöglich, das MongoDB -Passwort direkt über Navicat anzuzeigen, da es als Hash -Werte gespeichert ist. So rufen Sie verlorene Passwörter ab: 1. Passwörter zurücksetzen; 2. Überprüfen Sie die Konfigurationsdateien (können Hash -Werte enthalten). 3. Überprüfen Sie Codes (May Hardcode -Passwörter).

Sie können grundlegende Programmierkonzepte und Fähigkeiten von Python innerhalb von 2 Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master Control Flow (bedingte Anweisungen und Schleifen), 3.. Verstehen Sie die Definition und Verwendung von Funktionen, 4. Beginnen Sie schnell mit der Python -Programmierung durch einfache Beispiele und Code -Snippets.

Die MySQL-Datenbankleistung Optimierungshandbuch In ressourcenintensiven Anwendungen spielt die MySQL-Datenbank eine entscheidende Rolle und ist für die Verwaltung massiver Transaktionen verantwortlich. Mit der Erweiterung der Anwendung werden jedoch die Datenbankleistung Engpässe häufig zu einer Einschränkung. In diesem Artikel werden eine Reihe effektiver Strategien zur Leistungsoptimierung von MySQL -Leistung untersucht, um sicherzustellen, dass Ihre Anwendung unter hohen Lasten effizient und reaktionsschnell bleibt. Wir werden tatsächliche Fälle kombinieren, um eingehende Schlüsseltechnologien wie Indexierung, Abfrageoptimierung, Datenbankdesign und Caching zu erklären. 1. Das Design der Datenbankarchitektur und die optimierte Datenbankarchitektur sind der Eckpfeiler der MySQL -Leistungsoptimierung. Hier sind einige Kernprinzipien: Die Auswahl des richtigen Datentyps und die Auswahl des kleinsten Datentyps, der den Anforderungen entspricht, kann nicht nur Speicherplatz speichern, sondern auch die Datenverarbeitungsgeschwindigkeit verbessern.

Python wird in den Bereichen Webentwicklung, Datenwissenschaft, maschinelles Lernen, Automatisierung und Skripten häufig verwendet. 1) In der Webentwicklung vereinfachen Django und Flask Frameworks den Entwicklungsprozess. 2) In den Bereichen Datenwissenschaft und maschinelles Lernen bieten Numpy-, Pandas-, Scikit-Learn- und TensorFlow-Bibliotheken eine starke Unterstützung. 3) In Bezug auf Automatisierung und Skript ist Python für Aufgaben wie automatisiertes Test und Systemmanagement geeignet.

Als Datenprofi müssen Sie große Datenmengen aus verschiedenen Quellen verarbeiten. Dies kann Herausforderungen für das Datenmanagement und die Analyse darstellen. Glücklicherweise können zwei AWS -Dienste helfen: AWS -Kleber und Amazon Athena.

Nein, MySQL kann keine direkt zu SQL Server herstellen. Sie können jedoch die folgenden Methoden verwenden, um die Dateninteraktion zu implementieren: Verwenden Sie Middleware: Exportieren Sie Daten von MySQL in das Zwischenformat und importieren sie dann über Middleware in SQL Server. Verwenden von Datenbank -Linker: Business -Tools bieten eine freundlichere Oberfläche und erweiterte Funktionen, die im Wesentlichen weiterhin über Middleware implementiert werden.

Zu den Schritten zum Starten eines Redis -Servers gehören: Installieren von Redis gemäß dem Betriebssystem. Starten Sie den Redis-Dienst über Redis-Server (Linux/macOS) oder redis-server.exe (Windows). Verwenden Sie den Befehl redis-cli ping (linux/macOS) oder redis-cli.exe ping (Windows), um den Dienststatus zu überprüfen. Verwenden Sie einen Redis-Client wie Redis-Cli, Python oder Node.js, um auf den Server zuzugreifen.
