Forum: Compiler & IDEs Datentyp 'class' in Python


von Ralf (Gast)


Lesenswert?

Hallo,

kurze Frage zu dem Datentyp 'class' in Python. Ich würde gerne den 
Status eines aufgerufen Timers aus dem threading Modul abfragen und 
weiterverabreiten.
1
 a = Timer(timeout,timeout_device)
2
 a.start()
3
 
4
print (type(a))
5
>>>> <class 'threading.Timer'>
6
print (a)
7
>>>> <Timer(Thread-2, started -1247808400)>

Ist der Datentyp class als String zu behandeln, oder gibt es da noch 
Methoden zu um den Status auszulesen?

Also mit String meine ich, dass ich mit a.find("started") nach dem 
Status suchen muss.

Vielen Dank

von Franz F. (franzman)


Lesenswert?

Servus,

Eine Klasse ist Python auch nur ein Objekt, genauso wie Listen, 
Dictionarys, oder auch Strings.
Für die genannten Datentypen gibt es eine representation, die kannst du 
auch selbst definieren, für deine eigene Klasse
https://docs.python.org/3/reference/datamodel.html

Die Timer Klasse hat aber keine representation, deswegen siehst du hier 
nur den Standardtext, dass es sich um ein Objekt handelt.
Was willst du jetzt genau abfragen? Die Klasse Timer ist eine Subklasse 
von Thread, dass heißt, du kannst die selben Methoden benutzen.
https://docs.python.org/3.6/library/threading.html
mit
1
 print(a.is_alive())
siehst du ober der Timer noch läuft.

: Bearbeitet durch User
von Ralf (Gast)


Lesenswert?

Hi Franz,


vielen Dank, genau das habe ich gesucht.

Ich habe gerade erst mit Python und der ganzen Objektorientierung 
angefangen...deswegen sind mir die Zusammenhänge noch nicht so ganz 
klar.

Vielen Dank noch einmal an dich

Ralf

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.