Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.3中的Py_FlushLine发生了什么变化?_Python_C_Api_Python 3.x - Fatal编程技术网

Python 3.3中的Py_FlushLine发生了什么变化?

Python 3.3中的Py_FlushLine发生了什么变化?,python,c,api,python-3.x,Python,C,Api,Python 3.x,我正在将PythonC模块从2.7.x移植到Python3.3。我遇到的一个问题是Py_FlushLine没有在python头中定义 如何修改以下代码段以在python 3.3中工作 if (Py_FlushLine()) PyErr_Clear(); 更有趣的是,搜索在线python文档并没有显示关于Py\u FlushLine函数的任何信息。Py\u FlushLine过去的样子如下: int Py_FlushLine(void) { PyObject *f = PySy

我正在将PythonC模块从2.7.x移植到Python3.3。我遇到的一个问题是Py_FlushLine没有在python头中定义

如何修改以下代码段以在python 3.3中工作

  if (Py_FlushLine()) PyErr_Clear();
更有趣的是,搜索在线python文档并没有显示关于Py\u FlushLine函数的任何信息。

Py\u FlushLine过去的样子如下:

int
Py_FlushLine(void)
{
       PyObject *f = PySys_GetObject("stdout");
       if (f == NULL)
               return 0;
       if (!PyFile_SoftSpace(f, 0))
               return 0;
       return PyFile_WriteString("\n", f);
}
由于Py3k不再具有软空间的概念,我猜决定是这个函数是多余的,应该直接将EOL写入stdout。

Py\u Flushline过去看起来是这样的:

int
Py_FlushLine(void)
{
       PyObject *f = PySys_GetObject("stdout");
       if (f == NULL)
               return 0;
       if (!PyFile_SoftSpace(f, 0))
               return 0;
       return PyFile_WriteString("\n", f);
}
由于Py3k不再有软空间的概念,我猜决定是这个函数是多余的,应该直接将EOL写入标准输出