Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.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 为什么我会出现这个错误?我如何修复它?_Python_C_Cython_Sympy - Fatal编程技术网

Python 为什么我会出现这个错误?我如何修复它?

Python 为什么我会出现这个错误?我如何修复它?,python,c,cython,sympy,Python,C,Cython,Sympy,我在使用anaconda(python2.7)和我在对程序进行Cythonization的过程中遇到了一个错误。当我的程序写入文件时,我得到一个属性错误。有人能帮我修改代码吗?此外,任何让它运行更快的提示(cythonization等)都将不胜感激 这是我目前的代码: 这是错误代码: Traceback (most recent call last): File "<ipython-input-1-e95db2234cf8>", line 1, in <module&g

我在使用anaconda(python2.7)和我在对程序进行Cythonization的过程中遇到了一个错误。当我的程序写入文件时,我得到一个属性错误。有人能帮我修改代码吗?此外,任何让它运行更快的提示(cythonization等)都将不胜感激

这是我目前的代码:

这是错误代码:

Traceback (most recent call last):

  File "<ipython-input-1-e95db2234cf8>", line 1, in <module>
    runfile('C:/Users/Jay/Desktop/quantum emulator/qemulatortestt.py', wdir='C:/Users/Jay/Desktop/quantum emulator')

  File "C:\Users\Jay\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 585, in runfile
    execfile(filename, namespace)

  File "C:/Users/Jay/Desktop/quantum emulator/qemulatortestt.py", line 246, in <module>
    rewrite(task, asciivalue)

  File "C:/Users/Jay/Desktop/quantum emulator/qemulatortestt.py", line 77, in rewrite
    fle.write(cnt)

AttributeError: 'str' object has no attribute 'write'
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
runfile('C:/Users/Jay/Desktop/quantum emulator/qemulatortest.py',wdir='C:/Users/Jay/Desktop/quantum emulator')
文件“C:\Users\Jay\Anaconda\lib\site packages\spyderlib\widgets\externalshell\sitecustomize.py”,第585行,在runfile中
execfile(文件名、命名空间)
文件“C:/Users/Jay/Desktop/quantum emulator/qemulatortestt.py”,第246行,在
重写(任务、任务)
文件“C:/Users/Jay/Desktop/quantum emulator/qemulatortestt.py”,第77行,在重写中
自由写入(cnt)
AttributeError:“str”对象没有属性“write”

fle
是一个表示文件路径的字符串

最后一行表示您有一个字符串对象(
str
),但代码试图调用一个不存在的
write
方法/属性。它很可能引用了
fle
变量。即使我删除了以下行:task=cython.declare(cython.p_char),我也会收到相同的错误,这就是为什么我感到困惑的原因。您没有看到我的代码吗?错误在
qemulatortestt.py
的第77行。看看这个位置和上面的代码。
with open(fle, 'r+') as f:
    f.write(cnt)
    f.close()
    return f