如何找到python的Modules / _io / bufferedio.c?

时间:2018-01-06 10:23:44

标签: python c

我在Windows 10 pc上的python虚拟环境中安装pandas时遇到错误:

OSError: raw write() returned invalid length

并找到解决方法:

  

I've solved it by modifying this function in python's   模块/ _IO / bufferedio.c

     

在_bufferedwriter_raw_write

中      

代替

     

if(n< 0 || n> len){

     

通过

     

if((n< 0 || n> len)&& n!= len * 2){

     

它非常脏,可能有副作用,但它适用于我......

但是我找不到python的Modules / _io / bufferedio.c。

我在哪里可以找到python的Modules / _io / bufferedio.c?要改变它。

1 个答案:

答案 0 :(得分:1)

来自CPython的来源:https://github.com/python/cpython/blob/master/Modules/_io/bufferedio.c

(Google上的第一个链接" bufferedio.c")

您需要使用此更改(包括安装程序)从源代码编译Python,并用它替换您的安装。

官方发布源代码压缩包可以在官方网站上找到(或者您可以从上面链接的存储库中查看所需版本的标记)。源中的README文件具有编译指令。