Heim Backend-Entwicklung Python-Tutorial Einführung in die gängigen integrierten Funktionen von Python

Einführung in die gängigen integrierten Funktionen von Python

Sep 07, 2017 am 09:42 AM
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)
Nach dem Login kopieren

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

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

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

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

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

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

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

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
#这是一个生成器,并且是一个无线序列
Nach dem Login kopieren

Definieren Sie eine Filterfunktion :


def _not_pisible(n):
 return lambda x: x % n > 0
Nach dem Login kopieren

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) # 构造新序列
Nach dem Login kopieren

Drucken Sie 100 Primzahlen innerhalb:


for n in primes():
 if n < 100:
  print(n)
 else:
  break
Nach dem Login kopieren

sorted()

Pythons integrierte Funktion sorted() Funktion kann die Liste sortieren:


>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]
Nach dem Login kopieren

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

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([&#39;bob&#39;, &#39;about&#39;, &#39;Zoo&#39;, &#39;Credit&#39;], key=str.lower)
[&#39;about&#39;, &#39;bob&#39;, &#39;Credit&#39;, &#39;Zoo&#39;]
Nach dem Login kopieren

要进行反向排序,不必改动key函数,可以传入第三个参数reverse=True


>>> sorted([&#39;bob&#39;, &#39;about&#39;, &#39;Zoo&#39;, &#39;Credit&#39;], key=str.lower, reverse=True)
[&#39;Zoo&#39;, &#39;Credit&#39;, &#39;bob&#39;, &#39;about&#39;]
Nach dem Login kopieren

小练习:假设我们用一组tuple表示学生名字和成绩:L = [(&#39;Bob&#39;, 75), (&#39;Adam&#39;, 92), (&#39;Bart&#39;, 66), (&#39;Lisa&#39;, 88)] 。用sorted()对上述列表分别按c成绩从高到低排序:


L = [(&#39;Bob&#39;, 75), (&#39;Adam&#39;, 92), (&#39;Bart&#39;, 66), (&#39;Lisa&#39;, 88)]
def by_score(t):
 for i in t:
   return t[1]
L2=sorted(L,key= by_score)
print(L2)
Nach dem Login kopieren

运用匿名函数更简洁:


L2=sorted(L,key=lambda t:t[1])
print(L2)
Nach dem Login kopieren

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!

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)

Kann gegen Code in Windows 8 ausgeführt werden Kann gegen Code in Windows 8 ausgeführt werden Apr 15, 2025 pm 07:24 PM

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.

Ist die VSCODE -Erweiterung bösartig? Ist die VSCODE -Erweiterung bösartig? Apr 15, 2025 pm 07:57 PM

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.

Wählen Sie zwischen PHP und Python: Ein Leitfaden Wählen Sie zwischen PHP und Python: Ein Leitfaden Apr 18, 2025 am 12:24 AM

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.

So führen Sie Programme in der terminalen VSCODE aus So führen Sie Programme in der terminalen VSCODE aus Apr 15, 2025 pm 06:42 PM

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 und Python: Verschiedene Paradigmen erklärt PHP und Python: Verschiedene Paradigmen erklärt Apr 18, 2025 am 12:26 AM

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.

Kann Visual Studio -Code in Python verwendet werden Kann Visual Studio -Code in Python verwendet werden Apr 15, 2025 pm 08:18 PM

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.

Kann VSCODE für MAC verwendet werden Kann VSCODE für MAC verwendet werden Apr 15, 2025 pm 07:36 PM

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.

Kann vscode ipynb ausführen Kann vscode ipynb ausführen Apr 15, 2025 pm 07:30 PM

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.

See all articles