Funktioner#

Introduktion#

Funktioner är en grundläggande komponent i Python-programmering, där de paketerar kodavsnitt till återanvändbara, effektiva kodavsnitt som är utformade för att utföra en specifik uppgift. Funktioner kan anropas flera gånger i ett program, vilket gör kodorganisationen enklare och hjälper till att undvika upprepad kod. Funktioner gör det också lättare att felsöka kod.

Viktigt: Att bara definiera en funktion gör inte att den körs. Använd start_thread för att starta en funktion i en ny tråd så att den börjar köras direkt i början av projektet, istället för att vänta på en händelse eller återanrop.

  • def definierar en funktion.

  • return skickar funktionens utdata tillbaka till huvudprogrammet.

Användande:

def function_name(parameters):
    # Code to execute when the function is called
    return result  # Optional, used to return a value

Parametrar

Beskrivning

function_name

Ett namn du ger din funktion.

parameters

Valfritt. Variabler som accepterar indatavärden när funktionen anropas, vilket gör att data kan skickas till funktionen.

result

Valfritt. Låter funktionen skicka ett resultat tillbaka till anroparen. Om en funktion inte innehåller en return-sats returnerar den None som standard.

Obs: En funktion måste alltid definieras innan den anropas.

Definiera och anropa funktioner#

Functions with No Parameters#

Om en funktion inte kräver inmatning kan du definiera den utan parametrar.

def greeting():
    console.print("Hello!")

# Call the greeting function
greeting()

Functions with Parameters#

Du kan också lägga till parametrar till funktioner, vilket låter dig skicka in information som funktionen behöver för att fungera.

def move_square(moves):
    for index in range(moves):
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

# Call the move_square function
move_square(4)

Functions with Default Arguments#

Ett standardargument är en parameter som antar ett standardvärde om inget värde anges i funktionsanropet för det argumentet.

def move_square(moves=4):
    for index in range(moves):
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

# Call the move_square function
move_square()

Return Values from Functions#

Funktioner kan skicka data tillbaka till anroparen med hjälp av nyckelordet return Detta gör att du kan samla in och använda utdata i ditt program.

def times_two(number):
    return number * 2

# Display the return value
console.print(times_two(2))

starttråd#

start_thread startar en funktion i en ny tråd så att den börjar köras direkt i början av projektet.

Om mer än en start_thread används kommer funktionerna att köras samtidigt.

Usage:
start_thread(function)

Parameter

Beskrivning

function

Namnet på en tidigare definierad funktion.

def move_square():
    # Move in a square path
    while True:
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

def lights():
    # Blink Optical Sensor lights
    while True:
        optical_sensor.set_light(LEDStateType.ON)
        wait(0.5, SECONDS)
        optical_sensor.set_light(LEDStateType.OFF)
        wait(0.5, SECONDS)

# Start threads — Do not delete
start_thread(move_square)
start_thread(lights)