Python uvicorn : The term 'uvicorn' is not recognized as the name of a cmdlet, function, script file

Viewed 18762

Good evening,

I am using python 3.9 and try to run a new FastAPI service on Windows 10 Pro based on the documentation on internet https://www.uvicorn.org/ i executed the following statements

pip install uvicorn pip install uvicorn[standard]

create the sample file app.py

from fastapi import FastAPI

app = FastAPI()


@app.get("/")
async def root():
    return {"message": "Hello World"}

But when i run the code below :

uvicorn main:app --reload


uvicorn : The term 'uvicorn' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify t
hat the path is correct and try again.
At line:1 char:1
+ uvicorn
+ ~~~~~~~
    + CategoryInfo          : ObjectNotFound: (uvicorn:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

I also add the path of Python in the envroment settings

I also re-install Python 3.9 and make the default path for installation to c:\ProgramFiles\Python39 this path is also include now in the system enviroment and user enviroment settings.

enter image description here

if i run pip install uvicorn again it shows the following statement:

λ pip install uvicorn
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: uvicorn in c:\users\username\appdata\roaming\python\python39\site-packages (0.12.2)
Requirement already satisfied: h11>=0.8 in c:\users\username\appdata\roaming\python\python39\site-packages (from uvicorn) (0.11.0)
Requirement already satisfied: click==7.* in c:\users\username\appdata\roaming\python\python39\site-packages (from uvicorn) (7.1.2)
WARNING: You are using pip version 20.2.3; however, version 20.2.4 is available.
You should consider upgrading via the 'c:\program files\python39\python.exe -m pip install --upgrade pip' command.

Many thanks

Erik

6 Answers

You can also run uvicorn with the following command:

python -m uvicorn main:app --reload

Python installs it's scripts in the scripts folder at the following path: c:\users\username\appdata\roaming\python\python39\scripts
Place that path in the system and user environment variable. This will solve the problem.

first, you have to run

virtualenv env

then install code

pip install fastapi uvicorn

I Have The Same Problem and Found i dont Activate my Virtual Environment

After Activating Virtual Environment uvicorn Example:app --reload Worked For me

Maybe The Problem is so simple Like This

Try this one

pip uninstall uvicorn

then

pip install --user uvicorn

This literarily solved the same problem on my machine.

I have faced the same problem when using a virtual environment in Windows, so the easiest to solve this problem is in the terminal typing with python -m uvicorn main:app --reload after already activate that environment with activate xxx.

Related