Rialú#

Réamhrá#

Ligeann rialú i Python duit a insint don róbat cathain is ceart fanacht, cathain is ceart gníomhartha a athdhéanamh, conas cinntí a dhéanamh, agus cathain is ceart an tionscadal a chríochnú.

Seo thíos liosta de na rialuithe go léir, lena n-áirítear modhanna agus eochairfhocail lárnacha Python:

  • wait – Cuireann sé seo an tionscadal ar sos ar feadh tréimhse áirithe.

  • for – Déanann sé cód a athdhéanamh do gach mír i seicheamh.

  • if – Ritheann sé cód má tá coinníoll fíor.

  • if/else – Ritheann sé cód difriúil ag brath ar choinníoll.

  • if/elif/else – Seiceálann sé ilchoinníollacha in ord.

  • while – Déanann sé an cód a athdhéanamh fad is atá coinníoll fíor.

  • break – Fágann sé lúb láithreach.

  • stop_program – Críochnaíonn sé an clár atá ag rith.

  • pass – Úsáidtear áitchoimeádán nuair nach bhfuil aon ghníomh ag teastáil.

Fan#

wait sos ar feadh tréimhse áirithe ama sula mbogann sé go dtí an chéad líne eile de chód.

Usage:
wait(time, units)

Paraiméadair

Cur síos

time

An méid ama le fanacht, mar shlánuimhir dhearfach nó deachúil.

units

An t-aonad a léiríonn an t-am feithimh: MSEC (réamhshocraithe) – milleasoicindí, nó SECONDS

# Move right for one second, then stop
robot.move_at(90)
wait(1, SECONDS)
robot.stop_all_movement()

Do#

Déanann for sraith gníomhartha a athdhéanamh líon áirithe uaireanta. Is féidir for a úsáid chun lúb a dhéanamh trí mhíreanna i liostaí, i dtupail, i bhfoclóirí, i dtacair, i dteaghráin, nó ar feadh líon áirithe lúb le range.

Úsáid:

for value in expression_list:
    pass

Comhpháirteanna

Cur síos

value

Athróg shealadach a stórálann an eilimint reatha san athrá.

expression_list

An bailiúchán eilimintí atá á lúbadh tríd (m.sh., liosta, teaghrán, raon).

# Move in a square path.
for index in range(4):
    robot.move_for(50, 0)
    robot.turn_for(RIGHT, 90)

# Print each item in the list
colors = ["Red", "Green", "Blue"]

for color in colors:
    robot.screen.print(color)
    robot.screen.next_row()

Taispeánann trí rud atá á bpriontáil ar an scáileán.

Má#

if an bloc cóid eangaithe má tá an coinníoll True.

Úsáid:

if condition:
    pass

Comhpháirteanna

Cur síos

condition

Slonn nó athróg a dhéantar a sheiceáil nuair a ritheann an ráiteas. Más Trueé, déantar an cód taobh istigh den bhloc if a fhorghníomhú; más Falseé, scipeáiltear an bloc.

# Kick when the screen is pressed
while True:
    if robot.screen.pressing():
        robot.kicker.kick(MEDIUM)
    wait(0.1, SECONDS)

Más/Seachas sin#

if agus else ann, cinneann siad cé acu bloc cóid eangaithe a ritheann bunaithe ar cibé an bhfuil an coinníoll True nó False.

Úsáid:

if condition:
    pass
else:
    pass

Comhpháirteanna

Cur síos

condition

Slonn nó athróg a sheiceáiltear nuair a ritheann an ráiteas. Más Trueé, forghníomhaítear an cód taobh istigh den bhloc if ann; más Falseé, forghníomhaítear an cód taobh istigh den bhloc else ina ionad.

# Show one emoji when the screen is pressed,
# and a different emoji when not pressed
while True:
    if robot.screen.pressing():
        robot.screen.show_emoji(EXCITED)

    else:
        robot.screen.show_emoji(BORED)
    
    wait(0.1, SECONDS)

Má/Elif/Seachas sin#

Roghnaíonn an struchtúr if/elif/else cén bloc cóid atá á rith bunaithe ar choinníollacha:

  • if a bhloc má tá an coinníoll True.

  • elif coinníollacha breise ach amháin má tá na coinníollacha roimhe seo go léir FalseIs féidir ilráitis elif a úsáid.

  • else a bhloc ach amháin mura bhfuil aon cheann de na coinníollacha roimhe seo True.

Úsáid:

if condition:
    pass
elif condition:
    pass
else:
    pass

Comhpháirteanna

Cur síos

condition

Slonn nó athróg a dhéantar a sheiceáil nuair a ritheann an ráiteas. Is é an chéad choinníoll, arb ionann é agus True a chinneann cé acu bloc a fhorghníomhaítear; mura bhfuil aon cheann acu True, ritheann an else.

# Move the robot forward or reverse
# based on the position of the joystick
def when_axis_changed():
    position = controller.axis1.position()
    if position > 0:
        robot.move_at(0)
    elif position < 0:
        robot.move_at(180)
    else:
        robot.stop_all_movement()

controller.axis1.changed(when_axis_changed)

Cé go#

while ag rith cód arís agus arís eile chomh fada agus atá an coinníoll TrueIs féidir é a úsáid freisin mar “go deo” trí True a úsáid mar an gcoinníoll, nó “fan go dtí” trí not , mar a thaispeántar sna samplaí thíos.

Úsáid:

while condition:
    pass

Comhpháirteanna

Cur síos

condition

Slonn nó athróg a dhéantar a sheiceáil roimh gach athrá. Más Trueé, leanann an lúb ar aghaidh; más Falseé, stopann an lúb.

# Keep the LEDs green while the robot is moving
robot.move_for(200, 0, wait=False)
while robot.is_move_active():
    robot.led.on(ALL_LEDS, GREEN)
    wait(50, MSEC)

robot.led.on(ALL_LEDS, BLACK)

while True:
    # Continually flash all LEDs red then green.
    robot.led.on(ALL_LEDS, RED)
    wait(0.5, SECONDS)
    robot.led.on(ALL_LEDS, GREEN)
    wait(0.5, SECONDS)

# Wait until the screen is pressed before
# turning off the LEDs
while not robot.screen.pressing():
    robot.led.on(ALL_LEDS, RED)
    wait(50, MSEC)

robot.led.on(ALL_LEDS, BLACK)

Briseadh#

Fágann break lúb láithreach. Is féidir break a úsáid chun lúba a fhágáil a mbeadh lúbadh go deo acu murach sin.

# Flash LEDs until the screen is pressed
while True:
    robot.led.on(ALL_LEDS, RED)
    wait(0.5, SECONDS)
    robot.led.on(ALL_LEDS, GREEN)
    wait(0.5, SECONDS)

    if robot.screen.pressing():
        break

# Turn the LEDs Off
robot.led.off(ALL_LEDS)

Stop an Chláir#

stop_program críochnaíonn tionscadal atá ar siúl.

Usage:
robot.stop_program()

Paraiméadair

Cur síos

Níl aon pharaiméadair ag an modh seo.

# Stop the project once the screen is pressed
while True:
    robot.led.on(ALL_LEDS, RED)
    wait(0.5, SECONDS)
    robot.led.on(ALL_LEDS, GREEN)
    wait(0.5, SECONDS)
    if robot.screen.pressing():
        robot.stop_program()

Pas#

Is áitchoinneálaí é pass do chód amach anseo agus is féidir é a úsáid chun earráidí i lúba folamh, i gcoinníollaigh agus i bhfeidhmeanna a sheachaint.

if condition:
    pass

def function():
    pass