Da es sich jedoch um einen Spickzettel handelt, wird nur die Existenz der Funktion gelehrt, und eine detaillierte Erklärung wird aus Gründen der guten Sichtbarkeit nicht beschrieben.
-Jedes Mal, wenn Sie eine Funktion aufrufen, wird ein Namespace für die lokalen Variablen in dieser Funktion erstellt und beim Beenden der Funktion freigegeben. -Alle werden mit Ausnahme der Zuordnung unveränderlicher Objekte als Referenz übergeben -ob und für sind nicht Umfang
##Funktionsdefinition -def Funktionsname(Argument 1,Argument 2,...) -Mit benannten Argumenten kann die Reihenfolge der Argumente beliebig sein(C++Funktionen nicht gefunden in)
Wenn jedoch beim Lesen der Argumentliste von links nach rechts ein benanntes Argument angezeigt wird, müssen die nachfolgenden Argumente benannt werden.(Benannte Argumente sind richtig gerechtfertigt)。
-Standardwert für Argument verfügbar(C++gleich wie.)
C aufgrund des Vorhandenseins benannter Argumente++Es kann ein weiterer Standardwert festgelegt werden(Weil die Reihenfolge der Argumente abhängig vom genannten Argument frei ist)
c++Muss den Standardwert rechtsbündig haben
-Keine Header-Datei erforderlich, um Funktionen zu definieren
-Der Rückgabetyp muss nicht in der Funktionsdefinition angegeben werden(Keine Eingabe erforderlich)
##import (#Entsprechend enthalten)
import sys
Muss zuerst gemacht werden
Beispiel
sys.path.insert(0, new_path)
Modulname.Name der Klasse.Funktionsname()
###Verwenden Sie from, um die Klassen im Modul in den globalen Namespace zu laden(Der Modulname kann weggelassen werden)
Beispiel `` `aus dem sys-Importpfad aus Modulname Importklassenname
Wenn Sie also alle Klassen in einem Modul aufrufen möchten
vom Modulnamenimport*
Modellname | Funktion | Spezifische Inhalte |
---|---|---|
Bool | Richtig oder falsch | True False ,0 ≠ wahr 0=falsch |
Numerischer Wert | Ganzzahl, Bruch, komplex(Besetzung ist abgeschnitten) | 1, 1.0, |
aufführen | Anordnung, die jeden Bujek speichern kann(aufführenの要素にaufführenも代入可) | a_list = ['a', 'b', 'mpilgrim', 'z', 'example'] |
Taple | Gesperrt, damit es nicht in die Liste geändert werden kann(もとのTapleが破壊的変更を受けるメンバ関数なし) | a_tuple=('a', 'b', 'mpilgrim', 'z', 'example') |
einstellen | Ungeordnete, nicht doppelte Liste | a_set ={'a', 'b', 'mpilgrim', 'z', 'example'} |
Wörterbuch(Schlüsselsatz) | Eine Reihe von Schlüssel / Wert-Paaren(Schlüssel können anstelle von Indizes in Sätzen verwendet werden)Der Schlüssel ist einzigartig | a_dict = {'key1': 'value1', 'key2': 'value2'} |
NoneType | Typen, die nur null verarbeiten | null ist für NoneType eindeutig |
Operator | Funktion | Kommentar |
---|---|---|
** | Leistung |
Funktion | Methode | Kommentar |
---|---|---|
Zugriff auf Elemente | a[indesx] |
Die Grenze ist periodischa[-1] Zeigt auf das letzte Element |
Slice, um eine Unterspalte zu generieren | a[n:m] |
n<=i<m a[i]Wird als Liste extrahiert.a[:] Bezieht sich auf alle Elemente |
Element hinzufügen | a.append(n) a.insert(n,m) |
append wird am Ende hinzugefügt, n wird am mth hinzugefügt,+ Sie können Listen auch mit kombinieren |
Element hinzufügen(Verwenden einer Liste) | a.extend([list]) |
Am Ende wird verlängern hinzugefügt, wobei ein Listenobjekt als Argument verwendet wird |
Element löschen | del a[1] a.remove('Elementname') |
位置で削除する方法と、具体的なElementnameで削除する方法 |
Die folgende Schleife ist nützlich
for i,word in enumerate(['a','b','c']):
print i,word
Ausgabeergebnis
0 a
1 b
2 c
for i in range(0,11,1)
Zahlen können nicht direkt in Python geschrieben werden (Lesen / Schreiben ist eine Zeichenfolge oder eine Binärdatei). Daher sind float (a) und str (a) erforderlich, um es als Zahl zu behandeln.
f = open('text.txt', 'r')
addressList = []
for line in f:
name, zip, address = line[:-1].split('\t')
print name, zip, address
addressList.append(float(address))
Zahlen sollten so gesetzt werden, dass sie schweben, sobald sie gelesen werden
Eine Clojures ist eine Funktion, bei der eine außerhalb des globalen Bereichs definierte Funktion Informationen zum Bereich umgibt, der sie "zum Zeitpunkt der Definition" umgibt. In Python erforderliche Funktionen, die Funktionen in Funktionen definieren können
clojures.py
>>> def outer():
... x = 2
... def inner():
... print x
... return inner
>>> foo = outer() #innere Funktion kehrt zurück
>>> foo()
2 #Denken Sie daran, dass 2 nicht im Bereich der inne-Funktion liegt
Dies kann verwendet werden, um benutzerdefinierte Funktionen zu generieren, die feste Argumente annehmen.
Hinzufügen einer Funktion zu einer Funktion (unter Verwendung des Mechanismus, der die ursprüngliche Funktion als Argument verwendet, die Funktion hinzufügt und die angeordnete Funktion der ursprünglichen Funktion neu zuweist) Kann mit @ abgekürzt werden
Laden Sie die Funktion, um das Protokoll mit dem Decoder auszugeben.py
def logger(func):
def inner(*args, **kwargs): #Erstellen Sie eine Funktion mit hinzugefügten Funktionen
print "Arguments were: %s, %s" % (args, kwargs)
return func(*args, **kwargs) #Jede zugrunde liegende Funktion
return inner
#Logger zur foo-Funktion hinzufügen
@logger
def foo(x, y):
return x * y
#Dies@logger def foo ist foo=logger(foo)Syntax Zucker
foo(2,3)
Arguments were: (2, 3), {}
6
Die Liste kann wie folgt erstellt werden. Erstellen Sie mit x eine Liste mit f (x) als Element, die die Bedingung P (x) unter den in S enthaltenen Elementen x erfüllt Übrigens, wenn als Option weggelassen werden kann (das zweite Beispiel ist ein Generator)
[f(x) for x in S if P(x)]
max(x*x for x in [1,5,3] if x<3)
Tips
# -*- coding: utf-8 -*-
>>> a = [2,3,4,3,4,4,4]
>>> b = [i for i,j in enumerate(a) if j == max(a)]
>>> b
[2, 4, 5, 6]
#Wenn es ein maximales Element gibt
>>>a.index(max(a))
A = []
for i in range(0,M+1):
for j in range(0,N+1):
tmp = i+j
A.append(tmp)
A = array(A).reshape(M,N)
results_vector = np.linalg.solve(A_matrix,T_vector)
import matplotlib.pyplot as plt
plt.plot( [1,2,3], '-') #Gestrichelten Linie
plt.plot( [1,2,3], '--') #Gestrichelten Linie
plt.plot( [1,2,3], '-.') #Einzelpunkt unterbrochene Linie
plt.plot( [1,2,3], ':') #gepunktete Linie
plt.plot( [1,2,3], '.') #Punkt
plt.plot( [1,2,3], ',') #Punkt
plt.plot( [1,2,3], 'o') #Kreis
plt.plot( [1,2,3], 'v') #Abwärtsdreieck
plt.plot( [1,2,3], '^') #Dreieck nach oben
plt.plot( [1,2,3], '<') #Nach links zeigendes Dreieck
plt.plot( [1,2,3], '>') #Nach rechts zeigendes Dreieck
plt.plot( [1,2,3], 's') #Quadrat
plt.plot( [1,2,3], 'p') #Pentagon
plt.plot( [1,2,3], 'h') #Hexagon(Vertikal)
plt.plot( [1,2,3], 'H') #Hexagon(Seite)
plt.plot( [1,2,3], '+') #Kreuz
plt.plot( [1,2,3], 'x') #X.
plt.plot( [1,2,3], 'd') #Diamant
plt.plot( [1,2,3], 'D') #Quadrat(Diagonale)
plt.plot( [1,2,3], '|') #Vertikale Linie
plt.plot( [1,2,3], '_') #horizontale Linie
#Matching-Technik
plt.plot( [1,2,3], '-o') #Gestrichelten Linie+Kreis
plt.plot( [1,2,3], '--o') #Gestrichelten Linie+Kreis
plt.plot( [1,2,3], 'b') #Blau
plt.plot( [1,2,3], 'g') #Grün
plt.plot( [1,2,3], 'r') #rot
plt.plot( [1,2,3], 'c') #Cyan
plt.plot( [1,2,3], 'm') #Magenta
plt.plot( [1,2,3], 'y') #Gelb
plt.plot( [1,2,3], 'b') #schwarz
plt.plot( [1,2,3], 'w') #Weiß
#Gleichzeitige Spezifikation mit Plotmethode
plt.plot( [1,2,3], '--b') #Gestrichelten Linie+Blau
plt.show() #Zeichnung
plt.savefig("graph.png ") #sparen
print type(obj) #Schimmel
print dir(obj) #Methodenliste
Recommended Posts