Feidhmeanna#

Réamhrá#

Is cuid bhunúsach de ríomhchlárú Python iad feidhmeanna, ag pacáistiú blúiríní cóid i gcodanna cód in-athúsáidte, éifeachtacha atá deartha chun tasc sonrach a dhéanamh. Is féidir feidhmeanna a ghlaoch arís agus arís eile laistigh de chlár, rud a fhágann go bhfuil sé níos éasca eagrú cóid a dhéanamh, agus a chabhraíonn le cód arís agus arís eile a sheachaint. Déanann feidhmeanna cód níos éasca le dífhabhtú freisin.

Tábhachtach: Ní chiallaíonn sainmhíniú feidhme amháin go rithfidh sí. Bain úsáid as cte_thread chun feidhm a thosú i snáithe nua ionas go dtosóidh sí ag rith láithreach ag tús an tionscadail, seachas fanacht le himeacht nó le glao ar ais.

  • Sainmhíníonn def feidhm.

  • return seolann aschur na feidhme ar ais chuig an bpríomhchlár.

Úsáid:

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

Paraiméadair

Cur síos

function_name

Ainm a thugann tú do do fheidhm.

parameters

Roghnach. Athróga a ghlacann le luachanna ionchuir nuair a ghlaotar ar an bhfeidhm, rud a ligeann do shonraí a bheith curtha isteach sa fheidhm.

result

Roghnach. Ligeann sé don fheidhm toradh a sheoladh ar ais chuig an nglaoiteoir. Mura bhfuil ráiteas filleadh san áireamh i bhfeidhm, cuirfidh sí None ar ais de réir réamhshocraithe.

Nóta: Ní mór feidhm a shainmhíniú i gcónaí sula nglaotar uirthi.

Feidhmeanna a Shainmhíniú agus a Ghlaoch#

Functions with No Parameters#

Mura bhfuil ionchur ag teastáil ó fheidhm, is féidir leat í a shainiú gan paraiméadair.

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

# Call the greeting function
greeting()

Functions with Parameters#

Is féidir leat paraiméadair a chur le feidhmeanna freisin, rud a ligeann duit faisnéis a theastaíonn ón bhfeidhm le go n-oibreoidh sí a chur isteach.

def move_square(moves):
    for index in range(moves):
        arm.move_inc(100, 0, 0)
        arm.move_inc(0, 100, 0)
        arm.move_inc(-100, 0, 0)
        arm.move_inc(0, 100, 0)

# Call the move_square function
move_square(4)

Functions with Default Arguments#

Is paraiméadar é argóint réamhshocraithe a ghlacann luach réamhshocraithe mura soláthraítear luach sa ghlao feidhme don argóint sin.

def move_square(moves=4):
    for index in range(moves):
        arm.move_inc(100, 0, 0)
        arm.move_inc(0, 100, 0)
        arm.move_inc(-100, 0, 0)
        arm.move_inc(0, 100, 0)

# Call the move_square function
move_square()

Return Values from Functions#

Is féidir le feidhmeanna sonraí a sheoladh ar ais chuig an nglaoiteoir ag baint úsáide as an eochairfhocal return Ligeann sé seo duit an t-aschur a ghabháil agus a úsáid i do chlár.

def times_two(number):
    return number * 2

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

snáithe_cte#

Tosaíonn cte_thread feidhm i snáithe nua ionas go dtosaíonn sé ag rith láithreach ag tús an tionscadail.

Má úsáidtear níos mó ná cte_thread amháin, rithfidh na feidhmeanna ag an am céanna.

Usage:
cte_thread(function)

Paraiméadar

Cur síos

function

Ainm feidhme a sainmhíníodh roimhe seo.

def move_square():
    # Move in a square path
    while True:
        arm.move_inc(100, 0, 0)
        arm.move_inc(0, 100, 0)
        arm.move_inc(-100, 0, 0)
        arm.move_inc(0, 100, 0)

def lights():
    # Set the Signal Tower to start blinking the blue LED
    signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)

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