Paiza Python Primer 7: Funktionen verstehen

Python 3 ist auf Paiza völlig kostenlos, daher habe ich es zusammengefasst.

Paiza Python3 Primer

01: Lass uns etwas über Funktionen lernen

lesson.py


#Sowohl Druck als auch Text sind Funktionen

#Funktionen können die Verarbeitung mit Werten durchführen
#Im Fall des folgenden Drucks, dessen Wert "Argument" genannt wird"hello world"
#Das in der Funktion verarbeitete Ergebnis wird als "Rückgabewert" zurückgegeben und kann einer Variablen usw. zugewiesen werden.
print("hello world")

#Wenn es eingegeben wird, wird die Zeichenkette des über die Tastatur eingegebenen Werts zum "Rückgabewert" und kann der Variablen zugewiesen werden.
text=input()

Funktionsfunktion </ strong>
・ Teilen und organisieren Sie lange Codes → verbessern Sie die Sichtbarkeit
・ Sie können den Code
benennen ・ Sie können den Code so oft aufrufen, wie Sie möchten → Sie können ihn wiederverwenden
・ Sie können Codes
kombinieren

02: Lass uns eine Funktion machen

lesson.py



#Erstellen Sie eine Funktion
#def=definition
def say_hello():
    print("hello world")
say_hello()

text.txt


hello world

lesson.py


#Erstellen Sie eine Funktion
#Sie können Ihre eigene Funktion erstellen
#def=definition
def say_hello():
    print("hello world")
say_hello()
say_hello()

text.txt



hello world
hello world

Übung

  1. Rufen wir die Funktion auf

lesson.py


def say_hello():
    print("hello paiza")

#Schreiben Sie darunter einen Funktionsaufruf
say_hello()
hello paiza
  1. Erstellen wir eine Funktion

lesson.py



def say_hello():
    #Beschreiben Sie die Verarbeitung in der Funktion darunter
    print("hello python")

say_hello()

03: Fügen wir Argumente hinzu und geben den Wert zurück

lesson.py



Letzte Überprüfung
def say_hello():
    print("hello world")
    
say_hello()


def sum():
    print(10+20)

sum()

#Immer 10+Eine Funktion zur Berechnung von 20 zu haben, ist nicht sehr nützlich


#Wenn der Funktionsaufruf ein Argument hat, die Funktionsdefinition(x)An eine Variable übergeben
#Variable(x)Erstellen Sie eine Funktion, die sich durch Ändern ändert
def sum(x):
#def sum(Variable):
    print( x + 20)

sum(30)

#Funktion mit zwei Argumenten
    print(x + y)
sum(3,2)

#Fügen Sie Argumente hinzu und geben Sie den Wert zurück

def sum(x,y):
    #Zurück zur Funktionsdefinition und setzen
    return x + y

#In der Variablen nu1(return x +y ist)Zu speichernden
num1=sum(3,4)
print(num1)
num1=sum(300,400)
print(num1)

Übung

  1. Rufen wir die Multiplikationsfunktion auf

lesson.py


def multiply(x, y):
    return x * y

#Schreiben Sie darunter einen Funktionsaufruf
ans =multiply(3,4)
print(ans)

  1. Erstellen wir eine Multiplikation

lesson.py



#Lassen Sie uns eine Multiplikationsfunktion erstellen

def multiply(x, y):
    #Beschreiben Sie den folgenden Prozess
    return x*y

print(multiply(3, 4))
print(multiply(5, 7))
print(multiply(12, 34))

  1. Erstellen wir eine Tabelle mit neunundneunzig

lesson.py



#Erstellen wir eine Tabelle mit neunundneunzig

def multiply(x, y):
    return x * y

for step in range(1,10):
    for num in range(1, 10):
        print(multiply(step, num), end="")
        if num < 9:
            print(", ", end="")
    print("")

04: Lassen Sie uns den Umfang verstehen

lesson.py




'''
#Rezension

def sum(x,y):
    return x + y

num = sum (3,2)
print(num)

'''

#Ich habe beim Aufrufen von Funktionen Variablen verwendet
def sum(x,y):
    return x + y
    
a=10
b=30

num sum(a,b)
print(num)



#Es ist in Ordnung, vor der Definition seltsam zu schreiben
a=10
b=20
def sum(x,y):
    return x + y
    


num sum(a,b)
print(num)

lesson.py


#Selbst wenn ich viele Variablen entscheide und einen Fehler mache und es zu duplizieren scheint, scheint es normal zu funktionieren.
#Der effektive Bereich der Variablen ist fest und wird als "Bereich" bezeichnet.

a=10
b=20

def sum(x,y):
    a=3
    print("hello" + str(a))
    return x + y

num = sum(a,b)

print(num)


hello3
30

#Weil das Zielfernrohr innen und außen getrennt ist
#Der Wert wird problemlos ausgegeben
#Die äußere a-Variable und die innere a-Variable werden als unterschiedliche Dinge behandelt

lesson.py



Es gibt lokale und globale Variablen
Lokale Variable ... mit Gültigkeitsbereich
Globale Variablen ... können überall verwendet werden


#Nachricht ist eine globale Variable
message="paiza"
a=10
b=20

def sum(x,y):
    a=3
    
    #Seien Sie vorsichtig, wenn Sie globale Variablen ändern
    #Globale Variablen dürfen nur innerhalb der Funktion referenziert werden.
    #Zuweisungen und Änderungen sind nicht zulässig
    #Verwenden Sie die globale Nachricht, um Änderungen vorzunehmen
    #global message
    #message +=  "paiza"
    print("hello" + str(a))
    return x + y

num = sum(a,b)

print(num)
#Globale Variablen können sowohl innerhalb als auch außerhalb der Funktionsdefinition gemeinsam verwendet werden
#Selbst wenn Sie einer Variablen mit demselben Namen in der Funktionsdefinition einen Wert zuweisen, wird sie automatisch zu einer anderen lokalen Variablen.
#Beeinflusst keine globalen Variablen
print(message+ " " + str(a))

Übung

Fehler finden

lesson.py


 
 msg = "hello"

def say_hello():
    global msg
    msg += " "
    msg += "paiza"
    print(msg)

say_hello()

05: Lass uns eine RPG-Angriffsszene machen

lesson.py



#RPG-Angriffsszene

import random

def attack(enemy):
    print("Der Held"+ enemy + "Angegriffen")
enemies = ["Schleim","Monster-","Drachen"]

for enemy in enemies:
    #print("Der Held"+ enemy + "Angegriffen")
    attack(enemy)
    
    #Der Umfang der def def-Variablen und der for feind-Variablen ist unterschiedlich.
    

lesson.py



#Machen Sie einen kritischen Treffer nach einem zufälligen Wert
import random

def attack(enemy):
    print("Der Held"+ enemy + "Angegriffen")
    hit =random.randint(1,10)
    #Normaler Schaden bei 6 oder weniger, sonst kritische Treffer
    if hit <6:
        print(enemy + "Zu" +str(hit) + "Beschädigt")
    else:
        print("kritischer Treffer!" + enemy+ "Fügte 100 Schaden zu!")
enemies = ["Schleim","Monster-","Drachen"]

for enemy in enemies:
    #print("Der Held"+ enemy + "Angegriffen")
    attack(enemy)
    
    #Der Umfang der def def-Variablen und der for feind-Variablen ist unterschiedlich.

Übung

lesson.py



def attack(person):
    print(person + "Angegriffener Schleim")

def output_ememy_hp(enemy_hp):
    print("Feindliche HP bleibt" + str(enemy_hp) + "ist")

enemy_hp = int(input())
team = {"Mutig" : 200, "Krieger" : 150, "Magier" : 100}

for person, power in team.items():
    attack(person)
    #Schreiben Sie unten den Code, um die körperliche Stärke des Feindes zu verringern
    enemy_hp -= power
    output_ememy_hp(enemy_hp)

Ausgabe

06: Standardwert des Arguments

lesson.py



#Standardwert des Arguments
#Standardwert, der verwendet werden kann, wenn das Argument weggelassen wird

def introduce(name):
    print("ich"+name+"ist")
    
introduce("Mutig")

'''

Ausgabe
Ich bin ein mutiger Mann

lesson.py


#Holen Sie sich ein Argument nur, wenn Sie eine spezielle Rolle haben
#Verwenden Sie es und werden Sie automatisch ein "Dorfbewohner", wenn es kein Argument gibt
#Sie können dies mit den Standardwerten tun

#Sie können den Standardwert des Arguments angeben.
#Wenn Sie eine Funktion ohne Argumente aufrufen, wird ihr Standardwert verwendet

#Übergeben Sie den Dorfbewohner als Argument
def introduce(name = "Dorfbewohner"):
    print("ich" + name+ "ist.")

introduce("Mutig")    
introduce()

Ausgabe
Ich bin ein mutiger Mann

Ich bin ein Dorfbewohner

lesson.py



#Wenn Sie den Standardwert verwenden, wird dieser automatisch weggelassen, wenn das Argument weggelassen wird.
#Der Anfangswert kann angegeben werden
#Es gibt jedoch eine Funktion, die den Standardwert als Argument festlegt.
#Seien Sie vorsichtig, wenn Sie dort ein neues Argument hinzufügen möchten

def introduce(name = "Dorfbewohner",greeting):
    print("ich" + name+ "ist."+greeting)

introduce("Mutig","Hallo")    
introduce("Hallo")


#Wenn Sie dies tun, wird ein Fehler angezeigt

#Das Argument, für das Sie einen Standardwert festlegen möchten, muss nach dem Argument geschrieben werden, das keinen Standardwert hat.
#Tauschen Sie also Begrüßung und Namen aus

def introduce(greeting,name = "Dorfbewohner"):
    print("ich" + name+ "ist."+greeting)

introduce("Mutig","Hallo")    
introduce("Hallo")

Ich bin ein Hallo. Mutig
Ich bin ein Dorfbewohner. Hallo

lesson.py


#Argument variabler Länge
#Erhalten Sie Argumente, aber verwenden Sie diese, wenn Sie nicht wissen, wie viele Argumente es gibt
#Korrigieren Sie den Inhalt der Begrüßung als Testversion, damit mehrere Personen ihn begrüßen können

#Funktionsargument vom Namen*(Sternchen)Ändern Sie die Namen und verwenden Sie den Standardwert"Dorfbewohner"Löschen"
def introduce(greeting,*names):
    #Wiederholen Sie den Vorgang
    for name in names:
        print("ich" + name+ "ist."+greeting)

#(Hallo → Gruß,Held, Dorfbewohner, Soldat →*names)Wurde eingesetzt
introduce("Hallo","Mutig","Dorfbewohner","Soldat")

lesson.py


#Argument variabler Länge-Wörterbuch
   #**Wechseln Sie zu Menschen
def introduce(**peple):
    #Wiederholen Sie den Verarbeitungsnamen, greeting,inpep;e.imes()ändern
    for name,greeting in peple.items():
        print("ich" + name+ "ist."+greeting)
    print(peple)

#(Hallo → Gruß,Held, Dorfbewohner, Soldat →*names)Wurde eingesetzt
introduce(hero="Freut mich, dich kennenzulernen",villager="Hallo",soldier ="Ich freue mich darauf, mit Dir zu arbeiten.")

Ausgabe
Ich bin hier Freut mich, dich kennenzulernen
Ich bin ein Dorfbewohner Hallo
Ich bin ein Soldat Ich freue mich darauf, mit Dir zu arbeiten.
{'here': 'Freut mich, dich kennenzulernen', 'villager': 'Hallo', 'soldier': 'Ich freue mich darauf, mit Dir zu arbeiten.'}

Übung

  1. Standardwert des Arguments

lesson.py



def say_hello(target = "paiza"):
    print("hello " + target)

#Schreiben Sie darunter einen Funktionsaufruf
say_hello()

  1. RPG-Kampfszene

lesson.py


#Feinde*Feinde
def battle(*enemies):
	for enemy in enemies:
		print("Der Krieger" + enemy + "Kämpfte mit")

battle("Schleim", "Monster-", "Drachen")

07: Lassen Sie uns die Keyword-Argumente verstehen

lesson.py



#Schlüsselwortargument

#Funktion, wenn das Argument weggelassen wird
#"Hallo" in der Begrüßungsvariablen,"Welt" ist in der Zielvariablen
#Ausgabe
def say_hello(greeting = "hello",target="world"):
    print(greeting + " " + target)

#hello world
say_hello()

#Hallo Gruß, Zustand, der alle in taeget enthält
say_hello("Hallo","jedermann")

#Wenn Sie den Standardwert für das Argument verwenden, können Sie das Argument beim Aufruf weglassen
#Es befindet sich in der Begrüßungsvariablen und die Zielvariable wird weggelassen
#Daher wird es als Welt des guten Morgens ausgegeben.
say_hello("good morning")

#Es gibt ein "Schlüsselwortargument", das die Argumente kennzeichnet
#Beachten Sie, dass es sich nicht um eine Zuweisung handelt, da sie beschriftet wird, sondern nur vorübergehend ist
say_hello(greeting="Hallo",target="jedermann")

#Sie können auch die Reihenfolge der Argumente ändern
say_hello(target="Katzenlehrer",greeting="Guten Morgen")

#Wenn die "Schlüsselwortvariable" einen Standardwert hat, kann ihr Argument weggelassen werden.
say_hello(target="Katzenlehrer")
say_hello(greeting="Guten Morgen")

Ausgabe
hello world
Hallo zusammen
good morning world
Hallo zusammen
Guten Morgen Katzenlehrer
Hallo Katzenlehrer
Guten Morgen Welt

Übung

  1. Schlüsselwortargument Teil 1

lesson.py



Erwarteter Ausgabewert
Ich bin ein Dorfbewohner

def introduce(name = "ich", role = "Dorfbewohner"):
    print(name + role + "ist")

#Beschreiben Sie unten die notwendige Verarbeitung
introduce()

  1. Schlüsselwortargument Teil 2

lesson.py



Ich bin ein Krieger

def introduce(name = "ich", role = "Dorfbewohner"):
    print(name + role + "ist")

#Beschreiben Sie unten die notwendige Verarbeitung
introduce(role="Krieger")

Recommended Posts

Paiza Python Primer 7: Funktionen verstehen
Paiza Python Primer 8: Grundlegendes zu Klassen
Paiza Python Primer 1 Programmieren lernen
Paiza Python Primer 4: Grundlagen der Liste
Python-Funktionen
Paiza Python Primer 5: Grundlagen von Wörterbüchern
Paiza Python Primer 3: Loop-Verarbeitung lernen
# Python-Grundlagen (Funktionen)
[Anfänger] Python-Funktionen
Python selbst verstehen
Python Einfach zu bedienende Funktionen
Python-Grundlagen: Funktionen
Python-Anfängerhandbuch (Funktionen)
Python-Grundkurs (12 Funktionen)
[Python] Memo über Funktionen
# 4 [Python] Grundlagen der Funktionen
In Python integrierte Funktion ~ Zip ~
Python Tkinter Primer Hinweis
Integrierte Funktionen von Wrap Python
Paiza Python Primer 2: Lernen Sie bedingte Verzweigungs- und Vergleichsoperatoren
Curry jede Funktion mit Python ....
Python> Lambda> winzige Funktionen / Rückruffunktionen
Einführung in Python-Funktionen
O'Reilly python3 Primer Lernnotiz
Vollständiges Verständnis der Funktion numpy.pad
Studie aus Python Hour3: Funktionen
Überschreiben Sie Bibliotheksfunktionen in Python
Schlüsselwortargumente für Python-Funktionen
Python #Funktion 1 für Super-Anfänger
Python 3 Sortier- und Vergleichsfunktionen
Vollständiges Verständnis des Python-Debuggens
Python-Funktionen mit Chemoinfomatik gelernt
Funktionen höherer Ordnung und Einschlussnotation in Python
[Python] Verwalten Sie Funktionen in einer Liste
Python und DB: DBI-Cursor verstehen
Über Python-Diktat und sortierte Funktionen
Verwendung globaler Variablen in Python-Funktionen
[Python] Die potenzielle Feldplanung von Python Robotics verstehen
10 Funktionen von "Sprache mit Batterie" Python
Definieren Sie Funktionen (Methoden) in Python dynamisch
[Road to Intermediate] Grundlegendes zu Python-Eigenschaften