Problem beim programmieren von Roboterauto

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • left = motor1.forward(0.5)
    right = motor2.forward(0.5)
    randint(left, right)

    ich habe keine Ahnung, aber ich frage mich ob 0.5 wirklich int ist?

    Du willst doch keine Zahl als Rückgabewert?

    warum nicht wenn left 1 ist und right 2 ist

    Dann könnte ein random zw. 1 & 2 auch was bringen

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • ich habe keine Ahnung, aber ich frage mich ob 0.5 wirklich int ist?

    Auf der Dokumentation zu GPIOzero, https://projects.raspberrypi.org/en/projects/physical-computing/14, bedeutet das halbe Geschw

    Ich denke du musst dir hier etwas passenderes aussuchen.

    Eventuell 'choice' ?

    Wie importiere ich dieses choise? Es kommt die Meldung "builtin_function_or_method, object has no attribute 'choise' "

    Die Hand voller Asse, doch das Leben spielt Schach.


    Erfolg besteht aus drei Buchstaben: Tun

    Goethe

  • ich nix Python!:blush:

    Du willst Python? mutt du lernen:lol:

    z.B. erst mal durch print Ausgaben

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • warum nicht wenn left 1 ist und right 2 ist

    Weil 'left' und 'right'' so definiert sind:

    Code
    left = motor1.forward(0.5)
    right = motor2.forward(0.5)

    Und wenn ich das richtig verstehe, kann Python keine Zufallszahl ausgeben, die sich zwischen 'left' und 'right' befindet. Ich kann mich aber auch irren, bin ja selbst kein Profi.

    Wie importiere ich dieses choise?

    from random import choise

    Grüße

    Dennis

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

  • Weil 'left' und 'right'' so definiert sind:

    natürlich muss man left right passend definieren!

    left = motor1.forward(0.5)

    ist sicher nicht passend für

    randint

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Ich glaube mein Raspberry hat einfach keinen Bock zum arbeiten

    from random import choice

    random.choise(a, b)


    Ergebniss

    cannot import name 'choise' from 'random' (/usr/lib/python3.7/random.py

    Die Hand voller Asse, doch das Leben spielt Schach.


    Erfolg besteht aus drei Buchstaben: Tun

    Goethe

  • Wie dann?! Ich glaube ich muss über die Bücher.......

    Ich habe gerade kein Buch zur Hand.....

    https://www.sprachnudel.de/woerterbuch/ke…%2C+keine+kekse

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • So jetzt erst mal durchatmen. Dann nehm dir einen Übersetzer und lese dir die verlinkte Dokumentation über 'random' durch. Dann entscheidest du dich für die passende Funktion. 'choice' war nur nach kurzem überfliegen ein Vorschlag.

    Ändere dann deinen Code. Wenn es dann nicht klappt, poste den neuen Code mit vollständiger Fehlermeldung. Am besten du schreibst noch dazu, was du dir beim Code-schreiben gedacht hast.

    Ab und zu braucht man kurz eine Pause, das geht mir auch oft so.

    Grüße

    Dennis

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

  • Und wenn ich das richtig verstehe, kann Python keine Zufallszahl ausgeben, die sich zwischen 'left' und 'right' befindet. Ich kann mich aber auch irren, bin ja selbst kein Profi.

    Was meinst du damit?

    Das du keine Float bekommen kannst als Zufallszahl?

  • Hallo Hofei

    das bezog sich nicht auf Python im Allgemeinen sondern auf den Code.

    In der Dokumentation zu 'randint' steht:

    Zitat


    Return a random integer N such that a <= N <= b. Alias for randrange(a, b+1).

    Ich verstehe das so, dass beim Anwenden auf (a,b) die Funktion einen zufälligen Wert zwischen 'a' und 'b' ausgibt. Dafür muss (nach meinem Verständnis) 'a' und 'b' als Zahlen definiert sein.

    Der TE wendet diese Funktion aber auf 'left' und 'right' an und die sind bei ihm so definiert:

    Code
    left = motor1.forward(0.5)
    right = motor2.forward(0.5)

    Wenn ich davon ausgehe, das ich es richtig verstanden habe, dann kann in diesem Fall Python mit 'randit(left, right)' nichts anfangen, da 'randit' eine Form von Zahlen erwartet, dafür aber zwei Anweisungen bekommt.


    Grüße

    Dennis

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!