


Einführung in die gängigen integrierten Funktionen von Python
Die sogenannten Built-in-Funktionen können ohne Import direkt genutzt werden. Der folgende Artikel stellt hauptsächlich einige gängige integrierte Funktionen für das grundlegende Erlernen von Python vor. Der Artikel stellt sie Ihnen ausführlich anhand von Beispielcode vor. Lassen Sie uns mit dem Editor darauf zurückgreifen.
Vorwort
Python bietet viele integrierte Funktionen zur Verarbeitung vieler Typen Führen Sie ähnliche Operationen für mehrere Objekttypen durch, d. h. für mehrere Objekttypen. Ich werde im Folgenden nicht näher darauf eingehen.
map()
Die Funktion map() akzeptiert zwei Parameter, einer ist eine Funktion und der andere ein iterierbares Objekt (Iterable). , map Wenden Sie die übergebene Funktion nacheinander auf jedes Element des iterierbaren Objekts an und geben Sie das Ergebnis als Iterator zurück.
Zum Beispiel gibt es eine Funktion f(x)=x^2
, und Sie möchten diese Funktion auf eine list[1,2,3,4,5,6,7,8,9]
anwenden:
Mit einer einfachen Schleife können Sie Folgendes erreichen :
>>> def f(x): ... return x * x ... L = [] for n in [1, 2, 3, 4, 5, 6, 7, 8, 9]: L.append(f(n)) print(L)
Funktionen höherer Ordnung verwenden map()
:
>>> r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> list(r) [1, 4, 9, 16, 25, 36, 49, 64, 81]
Das Ergebnis r ist ein Iterator, iterator Es ist eine Lazy-Sequenz. Verwenden Sie die Funktion list()
, damit die gesamte Sequenz berechnet und eine Liste zurückgegeben wird.
Wenn Sie alle Zahlen in dieser Liste in Zeichenfolgen umwandeln möchten, ist dies einfach zu verwenden map()
:
>>> list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])) ['1', '2', '3', '4', '5', '6', '7', '8', '9']
Kleine Übung: Verwenden Sie die Funktion map()
, um den vom Benutzer eingegebenen nicht standardmäßigen englischen Namen in einen Standardnamen mit dem ersten Buchstaben in Großbuchstaben und dem Rest in Kleinbuchstaben zu ändern. Eingabe['adam', 'LISA', 'barT'],
Ausgabe['Adam', 'Lisa', 'Bart']
def normalize(name): return name.capitalize() l1=["adam","LISA","barT"] l2=list(map(normalize,l1)) print(l2)
reduce()
reduce()
Die Funktion akzeptiert auch zwei Parameter, einer ist eine Funktion und der andere ist ein iterierbares Objekt. Reduce führt eine kumulative Berechnung für das Ergebnis der Anwendung der übergebenen Funktion auf jedes Element des iterierbaren Objekts durch. Geben Sie dann das Endergebnis zurück.
Der Effekt ist: reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
Konvertieren Sie beispielsweise die Sequenz [1,2,3,4,5]
in die Ganzzahl 12345:
>>> from functools import reduce >>> def fn(x, y): ... return x * 10 + y ... >>> reduce(fn, [1, 2, 3, 4, 5]) 12345
Kleine Übung: Schreiben Sie eine prod()
-Funktion, die eine Liste akzeptieren und Reduzieren verwenden kann, um das Produkt zu berechnen:
from functools import reduce def pro (x,y): return x * y def prod(L): return reduce(pro,L) print(prod([1,3,5,7]))
map()
und reduce()
Umfassende Übung: Schreiben Sie die Funktion str2float, um die Zeichenfolge „123.456“ in den Gleitkommatyp 123.456 umzuwandeln
CHAR_TO_FLOAT = { '0': 0,'1': 1,'2': 2,'3': 3,'4': 4,'5': 5,'6': 6,'7': 7,'8': 8,'9': 9, '.': -1 } def str2float(s): nums = map(lambda ch:CHAR_TO_FLOAT[ch],s) point = 0 def to_float(f,n): nonlocal point if n==-1: point =1 return f if point ==0: return f*10+n else: point =point *10 return f + n/point return reduce(to_float,nums,0)#第三个参数0是初始值,对应to_float中f
filter()
filter()
Funktion wird zum Filtern der Sequenz verwendet filter()
akzeptiert auch eine Funktion und eine Sequenz filter()
wendet die übergebene Funktion nacheinander auf jedes Element an und bestimmt dann Ob der Rückgabewert True oder False ist, entscheidet darüber, ob das Element beibehalten oder verworfen wird.
Löschen Sie beispielsweise gerade Zahlen in der Liste:
def is_odd(n): return n % 2 == 1 list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15])) # 结果: [1, 5, 9, 15]
Kleine Übung: Verwenden Sie filter(), um Primzahlen zu finden Zahlen
Eine Möglichkeit, Primzahlen zu berechnen, ist die Ehrlich-Sieb-Methode. Ihr Algorithmus ist sehr einfach zu verstehen:
Listen Sie zunächst alle natürlichen Zahlen ab 2 auf und konstruieren Sie sie eine Sequenz:
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, ...
Nehmen Sie die erste Zahl 2 der Folge, die eine Primzahl sein muss, und verwenden Sie dann 2, um die Vielfachen von 2 in der Folge herauszufiltern:
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, ...
Holen Sie sich die erste Zahl der neuen Folge 3, es muss eine Primzahl sein, und verwenden Sie dann 3, um die Vielfachen von 3 in der Folge herauszufiltern:
5, 6, 7, 8, 9 , 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, ...
Nehmen Sie die erste Zahl 5 der neuen Folge und verwenden Sie dann 5 bis Filtern Sie die Vielfachen von 5 in der Reihenfolge heraus:
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, ...
Sieben Sie weiter und Sie erhalten alle Primzahlen.
Verwenden Sie Python, um diesen Algorithmus zu implementieren. Erstellen Sie zunächst eine Periodenfolge ab 3:
def _odd_iter(): n = 1 while True: n = n + 2 yield n #这是一个生成器,并且是一个无线序列
Definieren Sie eine Filterfunktion :
def _not_pisible(n): return lambda x: x % n > 0
Definieren Sie einen Generator, der kontinuierlich die nächste Primzahl zurückgibt:
def primes(): yield 2 it = _odd_iter() # 初始序列 while True: n = next(it) # 返回序列的第一个数 yield n it = filter(_not_pisible(n), it) # 构造新序列
Drucken Sie 100 Primzahlen innerhalb:
for n in primes(): if n < 100: print(n) else: break
sorted()
Pythons integrierte Funktion sorted()
Funktion kann die Liste sortieren:
>>> sorted([36, 5, -12, 9, -21]) [-21, -12, 5, 9, 36]
sorted()
Die Funktion ist auch eine Funktion höherer Ordnung und kann auch eine Schlüsselfunktion akzeptieren, um eine benutzerdefinierte Sortierung zu implementieren:
>>> sorted([36, 5, -12, 9, -21], key=abs) [5, 9, -12, -21, 36]
Die durch die Taste angegebene Funktion wird auf jedes Element der Liste angewendet und entsprechend dem von der Tastenfunktion zurückgegebenen Ergebnis sortiert.
默认情况下,对字符串排序,是按照ASCII的大小比较的,由于'Z' < 'a',结果,大写字母Z会排在小写字母a的前面。如果想忽略大小写可都转换成小写来比较:
>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower) ['about', 'bob', 'Credit', 'Zoo']
要进行反向排序,不必改动key函数,可以传入第三个参数reverse=True
:
>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True) ['Zoo', 'Credit', 'bob', 'about']
小练习:假设我们用一组tuple表示学生名字和成绩:L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]
。用sorted()
对上述列表分别按c成绩从高到低排序:
L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)] def by_score(t): for i in t: return t[1] L2=sorted(L,key= by_score) print(L2)
运用匿名函数更简洁:
L2=sorted(L,key=lambda t:t[1]) print(L2)
Das obige ist der detaillierte Inhalt vonEinführung in die gängigen integrierten Funktionen von Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

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

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



VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

VS -Code ist auf Mac verfügbar. Es verfügt über leistungsstarke Erweiterungen, GIT -Integration, Terminal und Debugger und bietet auch eine Fülle von Setup -Optionen. Für besonders große Projekte oder hoch berufliche Entwicklung kann VS -Code jedoch Leistung oder funktionale Einschränkungen aufweisen.

Der Schlüssel zum Ausführen von Jupyter -Notebook im VS -Code liegt darin, sicherzustellen, dass die Python -Umgebung ordnungsgemäß konfiguriert ist, verstehen, dass die Codeausführungsreihenfolge mit der Zellreihenfolge übereinstimmt, und sich der großen Dateien oder externen Bibliotheken bewusst zu sein, die die Leistung beeinflussen können. Die vom VS -Code bereitgestellten Codebetausch- und Debugging -Funktionen können die Codierungseffizienz erheblich verbessern und Fehler verringern.
