Wie kann ich eine Variabel in der "def" funktion nutzen (Python)?

3 Antworten

Mit dem global keyword.
Die variable existiert derzeit nur im äußeren scope.

Wenn du in deiner Funktion als erstes:

global number

schreibst, dann ist die variable dort verfügbar.

einnameoderso 
Fragesteller
 11.04.2022, 16:38

Also schreibe ich vor der def Funktion "global n = n + 1" oder schreibe ich

"global n = 0" ?

Danke im voraus :D

0
einnameoderso 
Fragesteller
 11.04.2022, 16:42

Ich habe ein wenig herumexperimentiert und es funktioniert nun. Vielen dank!

0
def click_message(number):
    number = number + 1
    label1.configure(text="The Button was pressed " + number + "times")
    print(number)

Ich habe in diesem Programm drei Fehler gefunden.

  1. du gibst in Zeile 8 die Variable n aus die nicht existiert (ich glaube du meintest number)
  2. in Zeile 6 fehlt ein global
  3. in Zeile 6 muss die integer Variable in einen String konvertiert werden

Korrigierte Funktion:

def click_message():
    global number
    number += 1
    label1.configure(text="The Button was pressed " + str(number) + "times")
    print(number)

Nach dem Beheben dieser Fehler funktioniert das Programm bei mir.