[英]Output of typer command is not visible in terminal
我正在嘗試在 python 中使用 Typer 包。
我寫了這段代碼:
import typer
app = typer.Typer()
@app.command()
def hello(name: str):
print(f"Hello {name}")
我正在嘗試使用以下命令運行它:
python main.py hello Patryk
我的終端沒有顯示任何東西。 沒有錯誤,沒有文本。
Python 版本:Python 3.9.13 (pipenv) 系統:Macos Ventura 13.1 終端:iTerm2 Build 3.4.18 和 Macos 默認終端
我試圖不使用 pipenv 並在我的機器上安裝所有打字機。
我也試過這段代碼:
import typer
def main(name: str):
print(f"Hello {name}")
if __name__ == "__main__":
typer.run(main)
當我用這個命令運行它時它起作用了:
python main.py
我找到了解決方案。 要使其工作,您需要添加:
if __name__ == "__main__":
app()
並且至少有 2 個命令,因此您的代碼必須如下所示:
import typer
app = typer.Typer()
@app.command()
def hello(name: str):
print(f"Hello {name}")
@app.command()
def goodbye(name: str):
print(f"Goodbye {name}")
if __name__ == "__main__":
app()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.