簡體   English   中英

typer 命令的輸出在終端中不可見

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM