之前学习linux的时候接触到了重定向,然后知道了文件描述符,对文件描述符十分感兴趣
fd(文件描述符),当进程系统调用open打开一个文件的时候,会返回一个fd值,在/proc/PID/fd里能看到这个进程已打开的fd,每个fd指向一个文件,进程通过fd操作文件
当我学到python的open函数的时候,发现和linux的open函数很相近
linux open C语言 :int fd = open(const char *pathname,int flags,mode_t mode);
python :open(name[,mode[,buffering]])
简单的写了一个python脚本
#!/usr/bin/python
file = open('test.txt')
print(file.read())
file.close()
然后用strace去查看,发现最后使用了open函数打开了这个文件
然后使用另一种方式测试
结论:
pthon的open是调用了linux上的open函数,linux的设计理念一切皆文件在python也体现了出来