Dies ist das Ende der Grundlagen.
Sie können eine Gruppe von Programmen als Funktion definieren und verwenden.
Auch die Funktionen, die in Python selbst voreingestellt sind Es wird eine eingebaute Funktion genannt.
Stellen Sie sich das als Programmnummer der Variablen vor
Eine Methode ist eine Methode, die die Verarbeitung eines bestimmten Werts durchführt.
Methode
Wert.Methodenname()
Ich werde es in Form von schreiben.
Es gibt auch eine Instanzvariable, die Wertelemente usw. abruft. Instanzvariablen haben keine Argumente, da es sich um Variablen und nicht um Funktionen handelt.
Instanzvariable
Wert.Name der Instanzvariablen
Schreiben Sie im Format.
Am Beispiel von append ist es wie folgt.
append
# append()Ist eine Methode, die verwendet werden soll, wenn Sie der Liste nur ein neues Element hinzufügen möchten.
alphabet = ["a","b","c","d","e"]
alphabet.append("f")
print(alphabet)
# ["a", "b", "c", "d", "e", "f"]Wird ausgegeben
Eine Methode zum Vergrößern und Zählen von Zeichen.
city = "Tokyo"
print(city.upper()) #"TOKYO" wird ausgegeben
print(city.count("o")) #"2" wird ausgegeben.
Die format () -Methode ist eine Methode, die für Zeichenfolgentypen verwendet werden kann, und Sie können Variablen in Zeichenfolgen einbetten. Es wird hauptsächlich verwendet, wenn der Wert einer Variablen in eine Vorlage eingefügt wird. Geben Sie die Stelle an, an der Sie den Wert mit {} einbetten möchten. Das Argument muss kein Zeichenfolgentyp sein.
print("ich{}Geburt,{}Angehoben".format("Tokio", "Saitama"))
#"Ich bin in Tokio geboren und in Saitama aufgewachsen" wird ausgegeben
# {}Der einzufügende Wert kann auch die Reihenfolge des Einfügens angeben. Sie können denselben Wert auch wiederholt einfügen.
print("ich{1}Geburt,{0}Aufwachsen{1}Bewohner".format("Tokio", "Saitama"))
#"Ich bin in Saitama geboren, in Tokio aufgewachsen und lebe in Saitama" wird ausgegeben
Der Listentyp hat eine Indexnummer.
Die Indexnummer ist die Nummer, wenn der Inhalt der Liste in der Reihenfolge von 0 gezählt wird.
Als Methode, um herauszufinden, in welcher Indexnummer sich das Zielobjekt befindet
index()
es gibt. Auch der Listentyp wurde früher behandelt.
count()
Kann verwendet werden.
alphabet = ["a", "b", "c", "d", "d"]
print(alphabet.index("a"))
#Da es sich um die 0. Indexnummer handelt, wird "0" ausgegeben.
print(alphabet.count("d"))
# "d"Befindet sich in der 3. und 4. Indexnummer, wird "2" ausgegeben.
sort()
Dadurch wird die Liste in aufsteigender Reihenfolge sortiert.
reverse()
Dies kann verwendet werden, um die Reihenfolge der Elemente in der Liste umzukehren.
Als Einschränkung
Wenn Sie nur die sortierte Liste anzeigen möchten, verwenden Sie die integrierte Funktion sorted (), die das sortierte Array zurückgibt.
soted()
Hier ist ein Anwendungsbeispiel.
# sort()Anwendungsbeispiel
list = [1, 10, 2, 20]
list.sort()
print(list) # [1, 2, 10, 20]Es wird angezeigt.
# reverse()Anwendungsbeispiel
list = ["Ah", "ich", "U.", "e", "Oh"]
list.reverse()
print(list) # ["Oh", "e", "U.", "ich", "Ah"]Es wird angezeigt.
Erstellen Sie wie folgt.
"Funktionsname definieren(): 」
Funktionen können die notwendige Verarbeitung organisieren, was das Programm vereinfacht. Es hat den Vorteil, dass die Gesamtbewegung leichter zu verstehen ist.
Der gleiche Prozess kann an mehreren Stellen wiederverwendet werden, was zu einer Verringerung der Beschreibungsmenge und einer Verbesserung der Lesbarkeit führt.
def sing():
print ("singen!")
#Der Umfang der Verarbeitung wird durch Einrückung festgelegt.
#Der Aufruf der definierten Funktion lautet außerdem "Funktionsname".()".
sing()
#Ausgabeergebnis sing!
Wenn Sie beim Definieren einer Funktion ein Argument festlegen, Sie können diesen Wert innerhalb der Funktion verwenden.
def Funktionsname(Streit):
def introduce(n):
print(n + "ist")
introduce("Yamada")
#"Es ist Yamada" wird ausgegeben
#Wenn Sie zu diesem Zeitpunkt das Argument als Variable angeben, können Sie das Ausgabeergebnis ändern, ohne das Argument direkt zu ändern.
def introduce(n):
print(n + "ist")
name = "Yamada"
introduce(name) #"Es ist Yamada" wird ausgegeben
name = "Tanaka"
introduce(name) #"Es ist Tanaka" wird ausgegeben
#Beachten Sie, dass die in der Funktion definierten Variablen und Argumente nur in der Funktion verwendet werden können.
Sie können mehrere durch Kommas getrennte Argumente angeben.
def introduce(first, family):
print("Der Nachname ist" + family + "Und der Name ist" + first + "ist.")
introduce("taro", "Yamada")
#"Der Nachname ist Yamada und der Name ist Taro." Wird ausgegeben.
Wenn Sie den Anfangswert (Standardwert) im Argument festlegen Wenn das Argument leer ist, wird der Anfangswert automatisch festgelegt. Argument = In Form eines Anfangswertes setzen.
def introduce(family="Yamada", first="Taro"):
print("Der Nachname ist" + family + "Und der Name ist" + first + "ist.")
introduce("Suzuki")
#"Der Nachname ist Suzuki und der Vorname ist Taro."
#In diesem Fall wird nur der erste Wert als Anfangswert und die Familie festgelegt"Suzuki"Es wurde überschrieben mit.
#Stellen Sie vor, wenn Sie nur das erste Argument übergeben möchten(first="Jiro")Sie müssen nur angeben.
#Außerdem muss der Anfangswert im Argument immer nach dem Argument festgelegt werden, für das der Anfangswert festgelegt ist.
#Daher ist es möglich, den Anfangswert nur für das letzte Argument wie folgt festzulegen.
def introduce(family, first="Taro"):
print("Der Nachname ist" + family + "Und der Name ist"+ first + "ist.")
#Wenn Sie den Anfangswert jedoch nicht nur für das vorherige Argument und für das letztere Argument wie unten gezeigt festlegen, tritt ein Fehler auf.
def introduce(family="Suzuki", first):
print("Der Nachname ist" + family + "Und der Name ist" + first + "ist.")
#Die Fehlerausgabe ist in diesem Fall nicht-Standardargument folgt Standardargument.
return
In einer Funktion definierte Variablen und Argumente können nicht außerhalb der Funktion verwendet werden. Sie können jedoch return zurückgeben, um den Rückgabewert an den Aufrufer der Funktion zu übergeben.
error
def introduce(family = "Yamada", first = "Taro"):
comment = "Der Nachname ist" + family + "Und der Name ist" + first + "ist."
print(introduce("Suzuki"))
#Es wird keine ausgegeben
#Da hier kein Rückgabewert vorhanden ist, lautet das Ausgabeergebnis None(Keiner)Wird sein.
def introduce(family = "Yamada", first = "Taro"):
comment = "Der Nachname ist" + family + "Und der Name ist" + first + "ist."
return comment #Übergeben Sie den Rückgabewert an die Funktion
print(introduce("Suzuki"))
#"Der Nachname ist Suzuki und der Vorname ist Taro."
Auf diese Weise können Sie mit return den Rückgabewert an den Aufrufer der Funktion übergeben.
Zuletzt aus einem Modul als Funktionsimport Es ist ein Format, um das Gerät aus der Verpackung zu nehmen.
Es gibt Scipy-Pakete und Zeitmodule.
Paket: Eine Sammlung verwandter Module in einem Verzeichnis
Unterpakete: Möglicherweise sind mehr Pakete im Paket verschachtelt. In diesem Fall wird das verschachtelte Paket aufgerufen.
Modul: Eine Datei, die mehrere häufig ausgeführte Prozesse kombiniert und für anderen Quellcode verfügbar macht.
Wenn Sie ein Paket oder Modul in einem Programm verwenden, ist der folgende Importvorgang erforderlich.
import scipy #Importieren Sie das Scipy-Paket
import time #Importieren Sie das Zeitmodul
#Bei Verwendung der Methoden im importierten Paket
#Im Allgemeinen der Paketname.Name des Unterpakets.Schreiben Sie es als Methodennamen. Denken Sie daran, dass es wie eine Methode funktioniert.
import scipy.linalg
scipy.linalg.norm([1,1])
>Ausgabeergebnis
1.4142135623730951
Im folgenden Beispiel wird die aktuelle Zeit mit der Zeitmethode des Zeitmoduls ausgegeben.
import time
now_time = time.time() #Aktuelle Zeit jetzt_Zeit ersetzen
print(now_time) #Die aktuelle Zeit wird ausgegeben
Außerdem aus Paketname. Paketname Importmethodenname Sie können die Methode auch direkt laden. In diesem Fall beim Aufruf der Methode Der Paketname und der Unterpaketname können weggelassen werden.
from scipy.linalg import norm
norm([1, 1]) #Paketname / Modulname kann weggelassen werden
#Ausgabeergebnis
1.4142135623730951
vom Modulnamen Sie können den Modulnamen weglassen, indem Sie den Namen der Importmethode schreiben.
from time import time #Importieren Sie die Zeitmethode des Zeitmoduls
now_time = time() #Der Modulname kann weggelassen werden
print(now_time) #Die aktuelle Zeit wird ausgegeben
Verwenden Sie den Namen des Importpakets als Namen Sie können das Paket mit einem beliebigen Namen aufrufen.
from time import time as t
#Importieren Sie die Zeitmethode des Zeitmoduls und behandeln Sie sie mit dem Namen t
now_time = t()
print(now_time) #Die aktuelle Zeit wird ausgegeben
Python ist eine objektorientierte Sprache. Ein Objekt ist eine Sammlung von Daten und Prozeduren (Methoden) für diese Daten.
Eine Prozedur beschreibt die Verarbeitung eines Objekts. Das Bild des Objekts ist eine Konstruktionszeichnung. Instanziieren Sie ein Objekt Die Verarbeitung wird ausgeführt, wenn eine Nachricht (Anweisung) gesendet wird.
Eine Methode zur Wiederverwendung eines Programms, indem das Verarbeitungsziel als Objekt erfasst und modularisiert wird. Es heißt objektorientiert.
Es ist wie eine Blaupause für die Struktur eines Objekts. Wenn Sie es im großen Format sagen.
Klasse: Typ Instanz: Großformat Objekt: Großformatsatz (Klasse + Instanz)
Zu den Klassen gehören Initialisierer, Methoden, Elementvariablen und mehr.
__init__()
Methode: Wie bereits erläutert
Mitgliedsvariablen sind Variablen, die innerhalb der Klasse verwendet werden.
class MyProduct: #Klasse definieren
def __init__(self, name, price): #Initialisierer definieren
self.name = name #Speichern Sie Argumente in Mitgliedern
self.price = price
self.stock = 0
self.sales = 0
#Erstellen Sie eine Instanz aus der definierten Klasse
#Rufen Sie MyProduct auf und erstellen Sie product1
product1 = MyProduct("cake", 500)
print(product1.name) #Ausgabename von Produkt1
cake
print(product1.price) #Ausgabepreis von Produkt1
500
Großschreibung des ersten Buchstabens des Klassennamens Wenn es üblich ist und mehrere Wörter enthält Kapitalisieren Sie jeden Anfang, z. B. Mein Produkt.
Initialisierung (init, selfz) Da es sich bei der Klasse um eine Entwurfszeichnung handelt, muss sie beim Erstellen einer Instanz initialisiert werden. Der Initialisierer wird mit dem Namen init definiert Es gibt eine Konvention, dass das erste Argument Selbst ist.
class MyProduct: #Klasse definieren
def __init__(self,Streit): #Initialisierer definieren
self bezieht sich auf den Instanzkörper (in diesem Fall MyProduct) Sie können self verwenden, um andere Mitgliedsvariablen der Instanz abzurufen Sie können die Methode aufrufen.
Beispiel
class MyProduct: #Klasse definieren
def __init__(self, name, price): #Initialisierer definieren
self.name = name #Speichern Sie Argumente in Mitgliedern
self.price = price
self.stock = 0 # stock,Verkäufe werden mit 0 initialisiert
self.sales = 0
#Erstellen Sie als Nächstes eine Instanz aus der definierten Klasse.
#In der Instanziierung Klasse(MyProduct)Einer Variablen zuweisen.
#Rufen Sie MyProduct auf und erstellen Sie product1
product1 = MyProduct("cake", 500)
print(product1.name) #Ausgabename von Produkt1
>Ausgabeergebnis
cake
print(product1.price) #Ausgabepreis von Produkt1
>Ausgabeergebnis
500
print(product1.stock)
>Ausgabeergebnis
0
Es gibt drei Arten von Methoden, die in einer Klasse definiert werden können:
class MyClass: #Name der Klasse
def __init__(self,Argument 2,Argument 3, …): #Initialisierer
self.Variablennamen=Ursprünglicher Wert#Variablen initialisieren
def normal_method(self,Argument 2,Argument 3, …): #Normale Methode
self.name = name
return name
@classmethod #Klassenmethode
#Klassenmethoden haben die Regel, dass das erste Argument cls ist.
def class_method(cls,Argument 2,Argument 3, …):
cls.name = cname
return cname
@staticmethod #Statische Methode
#Statische Methoden sind unkonventionell und die Argumente selbst sind nicht erforderlich.
def static_method(Argument 1,Argument 2,Argument 3, …):
Argument 1.name = sname
return sname
Klassenmethoden haben die Regel, dass das erste Argument cls ist Statische Methoden sind unkonventionell und die Argumente selbst sind nicht erforderlich.
Außerdem wird der Methodenaufruf als object.method name geschrieben.
Objekt.Methodenname
Vererbung: Vererben Sie den Inhalt der Klasse.
Override: Überschreiben der Methode der ererbenden Klasse mit der geerbten Klasse
Übergeordnete Klasse, Superklasse, Basisklasse: Vererbungsklasse
Untergeordnete Klassen, Unterklassen, abgeleitete Klassen: geerbte Klassen
#Übergeordnete Klasse
class MyProduct:
def __init__(self, name, price, stock):
self.name = name
self.price = price
self.stock = stock
self.sales = 0
def buy_up(self, n): #Kaufmethode
self.stock += n
def get_name(self): #Produktname Methode
return self.name
def sell(self, n): #Verkaufsmethode
self.stock -= n
self.sales += n * self.price
def summary(self): #Übersichtsmethode
message = "called summary().\n name: " + self.name + \
"\n price: " + str(self.price) + \
"\n price: " + str(self.get_price_with_tax()) + \
"\n sales: " + str(self.sales)
print(message)
#Das Vererbungsverfahren ist wie folgt.
#Definieren Sie MyProductSalesTax, indem Sie die MyProduct-Klasse erben
class MyProductSalesTax(MyProduct):
#Legen Sie den Verbrauchsteuersatz als viertes Argument des Initialisierers fest
def __init__(self, name, price, stock, tax_rate):
#Rufen Sie den Initialisierer der übergeordneten Klasse auf
super().__init__(name, price, stock)
self.tax_rate = tax_rate
#MyProduct bekommen_Name überschreiben
def get_name(self):
return self.name + "(Steuern inklusive)"
#get_price_with_Steuern hinzufügen
def get_price_with_tax(self):
return int(self.price * (1 + self.tax_rate))
# super()Sie können die Methode der übergeordneten Klasse mit aufrufen. Wenn dieses Programm ausgeführt wird, ist es wie folgt.
product_3 = MyProductSalesTax("phone", 30000, 100, 0.1)
print(product_3.get_name())
print(product_3.get_price_with_tax())
#Rufen Sie die Zusammenfassungsmethode von MyProduct auf
product_3.summary()
phone(Steuern inklusive) #Ausgabe wie erwartet
33000 #Ausgabe wie erwartet
called summary()
name: phone
price: 30000
stock: 100
sales: 0
Das Format der an die Konsole ausgegebenen Zeichenfolge kann mit der "Formatierungsmethode" formatiert werden. Hier sind einige der Formate, die zum Anordnen der in einer Zeichenfolge enthaltenen numerischen Teile verwendet werden.
: d int Typdaten werden in Dezimalschreibweise angezeigt : .0f Float-Typ Datenanzeige nur ganzzahliger Teil : .2f Float-Daten bis zur zweiten Dezimalstelle Verwenden Sie diese Formate wie im folgenden Code gezeigt.
#Definieren Sie eine Annäherung an das Umfangsverhältnis
pi = 3.141592
#Definieren Sie das Umfangsverhältnis als 3
pi2 = 3
print("Das Umfangsverhältnis beträgt{:d}".format(pi2)) # 「Das Umfangsverhältnis beträgt3」と出力される
print("Das Umfangsverhältnis beträgt{:.0f}".format(pi)) # 「Das Umfangsverhältnis beträgt3」と出力される
print("Das Umfangsverhältnis beträgt{:.2f}".format(pi)) # 「Das Umfangsverhältnis beträgt3.14 "wird ausgegeben.
Recommended Posts