main() und Pyscipter

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Ctrl-Z
User
Beiträge: 12
Registriert: Freitag 1. Mai 2015, 03:55

Hi,

sorry, ich habe bei einer zugegeben recht kurzen Suche nichts gefunden... eine ganz einfache Frage (peinlich!)...
Also, ich schreibe ein Programm und möchte gerne stilistisch sauber sein und nutze die main() hier
mit PyScripter. Zum Beispiel:

Code: Alles auswählen

def bla(y):
    return 2*y

def main():
    x = 1
    print x,bla(x)

if __name__ == '__main__':
    main()
Im Interpreter kann ich nun problemlos bla(3) ausführen, oder ich kann main() ausführen, aber ich möchte in der Konsole dann auch auf Variablen der main () zugreifen können... so eine Art Debug-Modus...
geht das?

Danke!
BlackJack

@Ctrl-Z: Welche „Variablen der main ()“? `x` in `main()` existiert nur solange die Funktion läuft und jeder Aufruf hat seinen eigenen lokalen Namen `x`.
Ctrl-Z
User
Beiträge: 12
Registriert: Freitag 1. Mai 2015, 03:55

BlackJack hat geschrieben:@Ctrl-Z: Welche „Variablen der main ()“? `x` in `main()` existiert nur solange die Funktion läuft und jeder Aufruf hat seinen eigenen lokalen Namen `x`.
Ja genau. Nehmen wir an ich baue in der main() eine Matrix auf. Ich möchte nun aber in der Konsole auf Elemente zugreifen zur Prüfung, so geht das nicht, weil die Variablen der main() nur lokal sind. Darum geht es mir gerade...
BlackJack

@Ctrl-Z: Dann könntest Du entweder den Debugger verwenden (`pdb`-Modul) oder eine Funktion schreiben welche die Matrix aufbaut und dann zurück gibt. Die kannst Du dann in der Shell ausprobieren.
Antworten