Hi
ich schreibe gerade eine Steuersoftware für eine Motor Steuerung. Ich habe verschiedene Befehle/Konstanten. Wie mache ich das am besten damit PEP 8 mir keien Fehler hinwirft? Oder was ist die beste Lösung?
class MotorDriver:
turn_right_one_step = 1
turn_left_one_step = 2
turn_left_continous = 3
turn_right_continous = 4
turn_speed = 5
...
turn_get_degree
optimaler weg um constanten zu gruppieren?
Ich weiß nicht genau was du zum Programmieren benutzt.
Jedoch :
muss es erstmal eingerückt werden und dann kommt es drauf an in Pycharm zeigt er mir Grün unterstrichen Wörter an die er einfach nicht kennt ( wenn das Wörter sind die man öfter benutzt kannst du rechtsklick drauf machen und to dictonary dann geht das weg jedoch sollte man KONSTANTEN immer groß schreiben
Jedoch :
Code: Alles auswählen
class MotorDriver:
turn_right_one_step = 1
turn_left_one_step = 2
turn_left_continous = 3
turn_right_continous = 4
turn_speed = 5Eine Vision ohne Aktion bleibe eine Illusion
-
einfachTobi
- User
- Beiträge: 513
- Registriert: Mittwoch 13. November 2019, 08:38
Konstanten werden gem. PEP8 KOMPLETT_GROSS geschrieben.
Ich weiß nicht was du vor hast ab das wäre eventuell eine möglichkeit :
Code: Alles auswählen
class MotorDriver:
def __init__(self):
pass
def turn_right_one_step(self):
pass
def turn_left_one_step(self):
pass
def turn_left_continous(self):
pass
def turn_right_continous(self):
pass
def turn_speed(self):
pass
motor_steuern = MotorDriver()
motor_steuern."hier kannst du dann auf die Funktionen zugreifen"
Eine Vision ohne Aktion bleibe eine Illusion
- __blackjack__
- User
- Beiträge: 14357
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@klaus1234: Wenn eine `__init__()` fehlt dann schreib eine. Ich meine irgendwie wird man doch einen `MotorDriver` initialisieren müssen‽
“It is easier to optimize correct code than to correct optimized code.” — Bill Harlan
- __blackjack__
- User
- Beiträge: 14357
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@klaus1234: Wenn Du eine Klasse hast die nur Konstanten hat, dann wurde ja Enum schon erwähnt, also schau Dir mal das `enum`-Modul an.
Dann wäre der Name `MotorDriver` irreführend, denn da würde man einen Treiber erwarten, also etwas das Code enthält um irgendein Gerät anzusteuern, und nicht nur Konstanten.
Dann wäre der Name `MotorDriver` irreführend, denn da würde man einen Treiber erwarten, also etwas das Code enthält um irgendein Gerät anzusteuern, und nicht nur Konstanten.
“It is easier to optimize correct code than to correct optimized code.” — Bill Harlan
