Python – die besten Beiträge

WIe genau ist hier die /= Methode zu verstehen[Python]?

Hallo, ich frage mich bei dem Beispiel unten, wie die erweiterte Zuweisung in diesem Zusammenhang zu verstehen ist: Was genau wird da womit dividiert? Ich habe es mit """???""" markiert. Genauer unter der __add__ Methode.

Was die Zuweisung an sich macht, verstehe ich, heisst zB 10 /2 = 5.

Ausserdem würde ich gerne wissen, wie man das self.Einheit in den eckigen Klammern auf gut Deutsch lesen sollte: Ich verstehe Programmcode, indem ich mir Sätze baue, die mir den Code von Computersprache übersetzen. Ich weiss, dass es dazu dient, dass innerhalb der Methode die richtige Einheit benutzt werden soll, aber wie würdet ihr das in menschliche Sprache übersetzen? Sowas wie "Rechne Zahlenwert * Einheit, benutz dabei gewünschte Einheit"?

Da ich bisher noch nicht mit eckigen Klammern in Klassen zu tun hatte (lerne erst seit kurzem), weiss ich nicht, wann genau man eckige Klammern immer anwendet. Kenne das so nur von Listen.

Danke für jede Rückmeldung!

#Klasse erzeugen
class Laenge: 
    #Dictionary mit dem Namen Umrechnung erzeugen: 
    Umrechnung = {"m" : 1, "dm" : 0.1, "cm" : 0.01, "mm" : 0.001, "km" : 1000,
                 "ft" : 0.3048, "in" : 0.0254, "mi" : 1609344} #ft = Fuß, in = inches, mi = Meilen
    #__init__Methode definieren
    def __init__(self, zahlenwert, einheit):
        #Attribute definieren: Zahlenwert, Einheit
        self.Zahlenwert = zahlenwert #Gibt die Zahl an, die benutzt wird 
        self.Einheit = einheit #Sagt, welche Einheit jeweils benutzt wird
    #str Methode: Lesbare Schreibweise erzeugen, wenn Ergebnisse ausgegeben werden
    def __str__(self):
        return "{:f} {}".format(self.Zahlenwert, self.Einheit)
    # __add__ Methode: Erzeugt den Plus-Operator
    def __add__(self, other):
        z = self.Zahlenwert * Laenge.Umrechnung[self.Einheit] #Zahlenwert 1, der benutzt wird
        z += other.Zahlenwert * Laenge.Umrechnung[other.Einheit] #Anderer Zahlenwert 2, der benutzt wird
        z /= Laenge.Umrechnung[self.Einheit] """???"""
        return Laenge(z, self.Einheit)
    # __sub__ Methode: Erzeugt den Minus-Operator
    def __sub__(self, other):
        z = self.Zahlenwert * Laenge.Umrechnung[self.Einheit]
        z -= other.Zahlenwert * Laenge.Umrechnung[other.Einheit]
        z /= Laenge.Umrechnung[self.Einheit]
        return Laenge(z, self.Einheit)
    
a1 = Laenge(20, "dm")
a2 = Laenge(10, "km")
print(a1 + a2)
print(a2 + a1)
Computer, Schule, programmieren, Informatik, Python

Wie sende ich Variablen von JavaScript nach Flask via jQuery?

Hallo,

ich bin in JavaScript/jQuery und auch Python/Flask noch ein ziemlicher Anfänger. Ich versuche gerade, einfach nur ein JSON-Objekt aus JavaScript in einem HTML-Template mit Flask anzuzeigen.

Hier mein Code:

Flask:

from flask import Flask,request, render_template

app = Flask(__name__)

@app.route("/")
def rofl():
  return render_template("test.html")

@app.route("/test", methods=['POST'])
def test():
  Namensliste = request.get_json(True)
  print(Namensliste)
  return render_template("rofl.html", Namensliste=Namensliste)

if __name__ == '__main__':
  app.run(port=5200)

test.html:

<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <form action="#" method="post">
    <button type="button" onclick="JSONTest()"> Send UserInfo</button>
  </form>
</body>

rofl.html:

<head>
  <meta charset="UTF-8">
  <title>Titel</title>
</head>
<body>
  NamensListe: {{Namensliste}}
</body>

JavaScript-Datei:

var myJason = {
  "name1" : "Jens",
  "name2" : "Josef",
  "name3" : "Johannes"
}

function JSONTest() {
  var MyJason= JSON.stringify(myJason);
  console.log(MyJason)
  $.ajax({
    type: 'POST',
    url: '/test',
    data: MyJason,
    success: function(data) {
      console.log(data, "Rückmeldung1");
  }});
}

Wie mein Code eigentlich funktionieren soll ist: Ich rufe die Route "/" auf, drücke auf den Button: "JSONTest()" und meine Funktion sendet via jQuery mein JSON-Objekt an "/test". Dort wird das Objekt in Namensliste gespeichert und rofl.html mit der Namensliste darin aufgerufen.

Ich weiß, dass hier wahrscheinlich viele Grundlagenfehler drin sind, aber ich habe wirklich ewig lang gegooglet und finde einfach nicht, wie man es richtig macht.

Danke schon einmal für jede Idee.

Computer, Technik, HTML, programmieren, JavaScript, Informatik, JQuery, Python, Flask

Meistgelesene Beiträge zum Thema Python