python - 在 Python 和 C 之间共享文件流

标签 python c file

我一直在尝试将 C 代码集成到 Linux 下的 Python 中,但我遇到了以下问题:“是否可以在 C 和 Python 之间共享一个已经打开的文件?我的意思是一个 C 文件和一个 Python 文件对象。

我正在苦苦挣扎的 C 函数被详尽地调用,所以我想避免每次发生这种情况时打开/关闭文件,并将打开的文件从 Python 传递给 C。我愿意接受任何有效的解决方案.

最佳答案

应该是可以的。在 C 中,您可以使用 fileno(fh) 获取文件描述符,并在 Python 中使用 os.fdopen(fd) 打开它。确保记得关闭它——我怀疑超出范围的 Python 文件对象是否会完成此操作。

关于python - 在 Python 和 C 之间共享文件流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22354902/

相关文章:

使用套接字将多个程序连接到一台服务器,c

c - 如何测试无法访问的 'file'是否存在?

java - 从文件加载的字符串中删除转义字符

python - numpy 与 mlabwrap 的 matlab 接口(interface)

python - Pandas sort_values 没有正确排序数字

python - 启动 Python 遇到了一个。无法获得运行项目

c - 如何为 Xeon Phi 编译 C 代码 (Windows 10)

c - “ Hello World ”视频程序不工作

c++ - 删除 fopen 成功创建的文件时权限被拒绝

python - 在 pandas 数据框中重新索引多重索引