Czym jest odpowiednik Python 3 python -m SimpleHTTPServer?
Czym jest odpowiednik Python 3 python -m SimpleHTTPServer?
Odpowiedzi:
Z dokumentów :
SimpleHTTPServerModuł został połączyły sięhttp.serverw Pythonie 3.0. Narzędzie 2to3 automatycznie dostosuje importowanie podczas konwersji źródeł do wersji 3.0.
Tak więc twoje polecenie jest python -m http.server, lub w zależności od instalacji, może być:
python3 -m http.server
python3 -m http.server --helpwszystkie argumenty i opcje.
python -m http.serverpracował dla mnie. Musiałem usunąć3
pythona Python3 jako, python3ale niektórzy wolą instalować Python3 po prostu jako python.
pythondomyślnie. Ale pytanie dotyczy python3:)
Odpowiednikiem jest:
python3 -m http.server
python3 -m http.server 8080jeśli musisz połączyć się z portem. Czytaj więcej na końcu tego rozdziału: docs.python.org/3/library/…
python3 -m http.server --helpszczegóły.
Korzystanie z narzędzia 2to3.
$ cat try.py
import SimpleHTTPServer
$ 2to3 try.py
RefactoringTool: Skipping implicit fixer: buffer
RefactoringTool: Skipping implicit fixer: idioms
RefactoringTool: Skipping implicit fixer: set_literal
RefactoringTool: Skipping implicit fixer: ws_comma
RefactoringTool: Refactored try.py
--- try.py (original)
+++ try.py (refactored)
@@ -1 +1 @@
-import SimpleHTTPServer
+import http.server
RefactoringTool: Files that need to be modified:
RefactoringTool: try.py
Oprócz odpowiedzi Petr'a, jeśli chcesz powiązać z określonym interfejsem zamiast ze wszystkimi interfejsami, których możesz użyć -blub --bindoznaczyć.
python -m http.server 8000 --bind 127.0.0.1
Powyższy fragment powinien załatwić sprawę. 8000 to numer portu. 80 jest używany jako standardowy port do komunikacji HTTP.
W jednym z moich projektów przeprowadzam testy na Pythonie 2 i 3. W tym celu napisałem mały skrypt, który uruchamia serwer lokalny niezależnie:
$ python -m $(python -c 'import sys; print("http.server" if sys.version_info[:2] > (2,7) else "SimpleHTTPServer")')
Serving HTTP on 0.0.0.0 port 8000 ...
Jako alias:
$ alias serve="python -m $(python -c 'import sys; print("http.server" if sys.version_info[:2] > (2,7) else "SimpleHTTPServer")')"
$ serve
Serving HTTP on 0.0.0.0 port 8000 ...
Pamiętaj, że kontroluję moją wersję Pythona za pomocą środowisk conda , dlatego mogę używać pythonzamiast python3Python 3.
python -m CGIHTTPServerjestpython3 -m http.server --cgi.