python的fcntl模块的位置在哪里?
我在 unix 上,但找不到 fcntl 模块的位置。我在 Web 开发中使用 Jython,并且我正在修改的现有程序需要该模块。你能给我一种导入它的方法或者让我的代码能够使用这个模块吗?提前致谢!
I'm on unix but I can't find the location of the fcntl module. I'm using Jython in my web development, and the existing program that I'm modifying needs that module. Can you give me a way to import it or for my code to be able to use this module? Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
fcntl
是一个内置模块。它不是用 Python 编写的,而是用 C 编写的。不幸的是,它还没有被移植到 Java,并且根据 这个错误报告,这不太可能发生。要回答您的问题:它位于 CPython 源代码中,此处。
问题是 fcntl 是 Unix 特定的;你的程序从一开始就不可移植。 Java 非常严格地独立于平台,并且(正如 Jython 开发人员在该错误报告中暗示的那样)一些低级的事情是不可能的。您可以搜索您需要的特定函数 - 与整个模块相比,您可能更有机会使其工作 - 但我建议寻找解决问题的方法,而不是尝试让 fcntl 在 Java 中工作。
我希望您能找到替代解决方案。
fcntl
is a built-in module. It's not written in Python, but in C. Unfortunately, it hasn't been ported to Java, and according to this bug report, it's unlikely that it ever will be.To answer your question: it's in the CPython source, here.
The problem is that fcntl is Unix-specific; your program was not portable from the start. Java is pretty strictly platform-independent, and (as the Jython developers imply in that bug report) some low-level things aren't possible. You can search about the particular functions you need — you'll might a better chance of getting that to work than the whole module – but I'd recommend looking for some way around the problem rather than trying to get fcntl to work in Java.
I hope you can find an alternative solution.