【发布时间】:2014-09-29 01:46:59
【问题描述】:
我正在尝试让我的应用程序运行带有 Unicode 字符的文件,但为此,您必须在它们之前解码。为此,我正在使用 ConfigObj.py。但是当我运行该应用程序时,出现以下错误:
Traceback (most recent call last):
File "GCW_Player.py", line 757, in <module>
epMEDIA ()
File "GCW_Player.py", line 89, in __ init__
self.keyhandler (event.key)
File "GCW_Player.py", line 133, in keyhandler
if key == K_RIGHT: self.k_goto ()
File "GCW_Player.py", line 211, in k_goto
self.go_to ()
File "GCW_Player.py", line 649, in go_to
self.list.generate (self.sec_ftypes)
File "/data/epm_core.py", line 114, in generate
inp = os.listdir (self.path)
TypeError: coercing to Unicode: need string or buffer, tuple found
下面,让app中对应的part文件:
def generate(self, filetypes):
self.data = []
inp = os.listdir(self.path)
inp.sort()
for line in inp:
file = File(os.path.join(self.path, line), filetypes)
if file.type != None:
self.data.append(file)
谁能帮帮我?我不知道在这种情况下该怎么办。我从来没有经历过这种情况。谢谢。
【问题讨论】:
-
你能检查一下 self.path 是否真的是一个字符串。
-
self.path很可能是一个元组。 -
不要命名包含空格的 Python 文件。使用它们会非常痛苦;你不能导入它们(或者至少不能没有广泛的、丑陋的解决方法),你必须在命令行中引用它们或用反斜杠转义空格。
-
是的。
self.path将采用档案的路径。 -
好的,现在告诉我们
self.path在此处包含的确切内容
标签: python unicode utf-8 range configobj