Python 3 – os.dup2() 方法

Python 3 – os.dup2() 方法

描述

该方法 dup2() 将文件描述符 fd 复制到 fd2 ,必要时先关闭后者。

注意 − 仅当可用时才会分配新文件描述符。在下面给出的示例中,如果 1000 可用,则会将其分配为重复的 fd。

语法

dup2() 方法的语法如下 –

os.dup2(fd, fd2)

参数

  • fd − 要复制的文件描述符。

  • fd2 − 复制的文件描述符。

返回值

该方法返回文件描述符的副本。

示例

以下示例展示了 dup2() 方法的用法。

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

# 打开一个文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )

# 使用重复的 fd 写入一个字符串
line = "this is test" 

# 字符串需要转换为字节对象
b = str.encode(line)
os.write(fd, b)

# 将此文件描述符复制为 1000
fd2 = 1000
os.dup2(fd, fd2);

# 使用 fd2 从开头读取此文件。
os.lseek(fd2, 0, 0)
line = os.read(fd2, 100)
str = line.decode()
print ("读取的字符串是:", str)

# 关闭已打开的文件
os.closerange( fd,fd2 )

print ("成功关闭文件!")

结果

运行以上程序后,会产生以下结果−

读取的字符串是: This is test
成功关闭文件!

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程