我正在运行 python 2.7.3 并做一些涉及 os 模块的基本工作。
import os
def main():
f= os.popen('cat > out', 'w',1)
os.write(f, 'hello pipe')
os.close(f)
main()
根据我看到的示例,我希望代码能够正常工作,但是解释器给出了这个错误:
Traceback (most recent call last):
File "./test.py", line 11, in <module>
main()
File "./test.py", line 8, in main
os.write(f, 'hello pipe')
TypeError: an integer is required
好的,转到文档。帮助页面说:
write(...)
write(fd, string) -> byteswritten
Write a string to a file descriptor.
fd 似乎代表文件描述符。大概这就是您执行以下操作时得到的结果:
file = open('test.py')
毫不奇怪,在线文档也说了同样的话。这里发生了什么?