Python在Linux上找到stdin文件路径

| 我如何知道附加到我的stdios的文件(或tty)? 就像是:
>>> import sys
>>> print sys.stdin.__path__
\'/dev/tty1\'
>>>
我可以看一下proc:
import os, sys
os.readlink(\'/proc/self/fd/%s\' % sys.stdin.fileno())
但是似乎应该有一种内置的方式?     
已邀请:
        sys.std *对象是标准的Python文件对象,因此它们具有
name
属性和
isatty
方法:
>>> import sys
>>> sys.stdout.name
\'<stdout>\'
>>> sys.stdout.isatty()
True
>>> anotherfile = open(\'/etc/hosts\', \'r\')
>>> anotherfile.name
\'/etc/hosts\'
>>> anotherfile.isatty()
False
缺少确切告诉您所获得的TTY设备的信息,这就是Python提供的API的扩展。     
        得到它了!
>>> import os
>>> import sys
>>> print os.ttyname(sys.stdin.fileno())
\'/dev/pts/0\'
>>>
如果stdin不是TTY,则为6到7。但这很容易用ѭ8进行测试     

要回复问题请先登录注册