Import von Flask

Django, Flask, Bottle, WSGI, CGI…
Antworten
scorp
User
Beiträge: 5
Registriert: Sonntag 7. Februar 2021, 10:11

Hei

Ich erstelle eine Web-Applikation mit Flask und HTML. Da ich es zu ersten mal mache, habe ich mal ein Standartbefehl zum testen gegeben.
Dieser Funktioniert leider nicht und ich weiss nicht wieso. habe auch nichts gefunden im Internet.

Ich arbeite mit Visual Studio Code
Python 3.9

Die Installation von virtualenv hat funktioniert und der Download von Flask auch. "pip install Flask" + "pip install Flask-sqlalchemy"
Wenn ich es wiederhole kommt auch die antwort, dass es bereits installiert ist.

Das sind die Zeilen:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def index():
return "Hello, World!"

if __name__ == "__main__":
app.run(debug=True)

Antwort:
>>> app.run(debug=True)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'app' is not defined

und:
>>> from flask import Flask
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'flask'

Wenn mir jemand helfen könnte, wäre das super :)
Benutzeravatar
sparrow
User
Beiträge: 4187
Registriert: Freitag 17. April 2009, 10:28

@scorp: Zeig einmal bitte den kompletten Code zwischen Code-Tags, den du ausführst. Uns dann zeig die komplette Fehlerneldung, die erscheint, wenn du den Code ausführst. Ebenfalls zwischen Code Tags.

Code Tags werden automatisch eingefügt, wenn du im vollständigen Editor den </> Button drückst.
Benutzeravatar
__blackjack__
User
Beiträge: 13080
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@scorp: Interessant wäre auch *wie* Du das ausführst, denn die ``>>>`` deuten ja auf eine interaktive Python-Shell hin. Dafür hast Du auch das gleiche Python verwendet wie für die Installation von Flask & Co? Im gleichen venv‽

Welches System verwendest Du? Bei den meisten Linuxdistributionen ist ``pip`` ausserhalb von venvs das Programm mit dem man Pakete für das Python 2.x vom System installiert. Das für Python 3.x vom System heisst das Programm ``pip3``.

Ich würde aber ``pip`` immer als Modul über den jeweiligen Python-Interpreter installieren mit dem man am Ende auch das Programm oder die Webanwendung ausführt. Gerade bei mehreren Python-Installation und/oder venvs ist man dann immer auf der sicheren Seite und muss nicht schauen für welches Python das ``pip``-Programm ist, das als erstes im Suchpfad für Programme gefunden wird. Also beispielsweise ``python3.9 -m pip …`` wenn mit ``python3.9`` bei Dir das passende Python gestartet wird.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
scorp
User
Beiträge: 5
Registriert: Sonntag 7. Februar 2021, 10:11

Ich mache genau das was er macht bis minute 8.25.

https://www.youtube.com/watch?v=Z1RJmh_OqeA&t=264s

Code: Alles auswählen

from flask import Flask
app = Flask(__name__)

@app.route("/")
def index():
    return "Hello, Flask!"

if __name__ == "__main__":
    app.run(debug=True)

Fehlermeldung:
Meine Datai heiss app.py

Code: Alles auswählen

>>> python3 app.py
  File "<stdin>", line 1
    python3 app.py
            ^
SyntaxError: invalid syntax

und wenn ich direkt oben shift + enter drücke, wie in Jupyterlab dan kommt die Fehlermeldung:

Code: Alles auswählen

SyntaxError: invalid syntax
>>> app.run(debug=True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'app' is not defined
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Jetzt tippst Du ein Shell-Kommando in die interaktive Python-Eingabe.
scorp
User
Beiträge: 5
Registriert: Sonntag 7. Februar 2021, 10:11

Code: Alles auswählen

PS C:\Users\scop\Desktop\HELLO_FLASK> python3 app.py
Python est introuvable. ExÚcutez sans argument pour procÚder Ó l
so sieht es aus wenn ich es im powershell mache.

die sind ja inbegriffen im visual studio code

ich kann einfach auswählen zwischen poweshell und pyhton. er macht es im bash Terminal
Benutzeravatar
__blackjack__
User
Beiträge: 13080
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@scorp: Offenbar ist Python nicht so installiert das es im %PATH% liegt. Oder nicht unter dem Namen python3. Was startet denn wenn man nur python ohne die 3 eingibt? Falls dass dann das falsche Python ist, oder die gleiche Meldung kommt, dann musst Du schauen, dass Du den Pfad zu dem Python in %PATH% bekommst, oder beim Aufruf den kompletten Pfad zu der EXE eingeben.

In der Python-Dokumentation gibt es Kapitel für die verschiedenen Betriebssysteme wie man das dort jeweils zum laufen bringt.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten