Python os.isatty() 方法



Python 的 isatty() 方法如果指定的描述符是打开的并且连接到类似“tty”的设备,则返回 True,否则返回 False。此方法用于检查文件流的交互性。

类似“tty”的设备指的是“电传打字机”终端。它是一种用于执行 I/O 操作的输入设备。文件描述符用于读取或写入文件数据。

语法

isatty() 方法的语法如下所示:

os.isatty( fd )

参数

Python 的 os.isatty() 方法接受一个参数:

  • fd − 这是需要检查关联的文件描述符。

返回值

Python 的 os.isatty() 方法返回一个布尔值(True 或 False)。

示例

以下示例显示了 isatty() 方法的基本用法。在这里,我们打开一个文件并在其中写入二进制文本。然后,我们验证文件是否连接到 tty 设备。

#!/usr/bin/python
import os, sys

# Open a file
fd = os.open("foo.txt", os.O_RDWR|os.O_CREAT )

# Write one string
os.write(fd, b"Python with Tutorialspoint")

# Now use isatty() to check the file.
ret = os.isatty(fd)

print ("Returned value is: ", ret)

# Close opened file
os.close( fd )
print("File closed successfully!!")

当我们运行以上程序时,它会产生以下结果:

Returned value is:  False
File closed successfully!!

示例

要检查标准输出/输入是否连接到终端,我们可以分别将 1 和 0 作为参数传递给 isatty() 方法。以下示例显示了相同的内容。

import os

# Checking if standard output/input is connected to terminal
if os.isatty(1 and 0):
   print("Standard output/input is connected to terminal")
else:
   print("Standard output/input is not connected to a terminal")    

执行后,以上程序将显示以下输出:

Standard output/input is connected to terminal
python_files_io.htm
广告