【发布时间】:2011-05-14 23:36:39
【问题描述】:
我有一个小型 Python 实用程序,它只能作为管道运行。我希望它在独立运行时打印出帮助消息。进程如何知道它是否被用作管道。比较 sys.stdin 和 sys.__stdin__ 不起作用。
【问题讨论】:
我有一个小型 Python 实用程序,它只能作为管道运行。我希望它在独立运行时打印出帮助消息。进程如何知道它是否被用作管道。比较 sys.stdin 和 sys.__stdin__ 不起作用。
【问题讨论】:
你可以使用isatty:
if sys.stdin.isatty():
如果标准输入是 tty,它将是 True,这大致意味着它被直接使用,在管道之外。
【讨论】:
if sys.stdout.isatty()。
sys.stdin.isatty() 始终是False。