Io Python3.4打开(文件&x27;a&x27;)aifc.Error

Io Python3.4打开(文件&x27;a&x27;)aifc.Error,io,mode,python-3.4,Io,Mode,Python 3.4,为了编写python,我有了它,这样我就可以用file=open('dir\file','a')附加一个文件(在Eclipse中),这样我就可以附加一个文件了,但是我得到了: aifc.Error: mode must be 'r', 'rb', 'w', or 'wb' 我不想读取文件,保存到数组或临时文件,然后重写。发生什么事了 注意:我在命令提示符中得到了同样的结果,这在我看来很奇怪 此外,我知道我的解释器配置正确,所有内容都在python34文件夹中(即python34\Lib\sit

为了编写python,我有了它,这样我就可以用
file=open('dir\file','a')
附加一个文件(在Eclipse中),这样我就可以附加一个文件了,但是我得到了:

aifc.Error: mode must be 'r', 'rb', 'w', or 'wb'
我不想读取文件,保存到数组或临时文件,然后重写。发生什么事了

注意:我在命令提示符中得到了同样的结果,这在我看来很奇怪

此外,我知道我的解释器配置正确,所有内容都在python34文件夹中(即
python34\Lib\site packages

运行时的完整错误消息:

Running...
Traceback (most recent call last):
  File "G:\Prog\PythonCurrent\RadioDB\src\radiodb.py", line 122, in <module>
    main()
  File "G:\Prog\PythonCurrent\RadioDB\src\radiodb.py", line 43, in main
    lineTypesFile = open('{}/Desktop/GPS Line Types.txt'.format(home), 'a')
  File "c:\Python34\lib\aifc.py", line 891, in open
    raise Error("mode must be 'r', 'rb', 'w', or 'wb'")
aifc.Error: mode must be 'r', 'rb', 'w', or 'wb'
正在运行。。。
回溯(最近一次呼叫最后一次):
文件“G:\Prog\PythonCurrent\RadioDB\src\RadioDB.py”,第122行,在
main()
文件“G:\Prog\PythonCurrent\RadioDB\src\RadioDB.py”,第43行,在main中
lineTypesFile=open(“{}/Desktop/GPS-Line-Types.txt”。格式(home),“a”)
文件“c:\Python34\lib\aifc.py”,第891行,打开
raise错误(“模式必须为“r”、“rb”、“w”或“wb”)
aifc.错误:模式必须为“r”、“rb”、“w”或“wb”

该错误来自模块。仅支持
r
rb
w
wb
模式。您是否正在从aifc导入*脚本中的某个地方调用
?如果是这样,不要这样做!它用
aifc.open
隐藏内置的
open
。仅从
aifc

导入所需的函数,此错误显示在哪里?当您通过Netbeans语法检查实际运行脚本或源代码本身时?当我运行脚本时。它事先没有显示。@dano一个选项没有可能的选项了???解决了:Netbeans自动配置了我的导入;因为它没有看到
open()
函数来自何处,所以它导入了名为
open()
的方法的第一个实例,并导入了它(在本例中是从aifc模块)。不。因为它是内置的(或者我认为是内置的),所以它不应该导入自己吗?事实上,它是/应该被导入的,因为它可以告诉我错误来自哪个文件(这在Eclipse中起作用,所以aifc应该知道第二个参数的“a”!!)@Dylan,如果
aifc
中的
open
出现在模块的名称空间中,那就没有任何意义了。我唯一能想到的是你把解释器的路径配置错了。如果您使用python34\Lib而不是python34\Lib\site软件包,错误会消失吗?我发现了。。。Netbeans为我自动导入。我已经从aifc导入打开了
,我猜这超过了内置功能
open()
。这有点烦人。@Dylan Netbeans没有自动导入它,您是通过调用aifc import open中的
手动导入的。这将使
aifc
中的
open
成为模块全局名称空间的一部分,并隐藏内置的open。只需使用
import aifc
aifc.open
或使用
\uuuu内置\uuuuu.open
访问内置的
open
功能。