csv模块的问题 [英] Problems with csv module
问题描述
您好,
我在使用csv模块时遇到一个问题。
代码:
self.reader = csv.reader(f,delimiter =",")
完美无缺。但是当我使用变量作为分隔符时:
self.reader = csv.reader(f,delimiter = Adelimiter)
我得到了追溯:
文件" /home/florian/visualizer/ConfigReader.py" ;,第13行,在__init__
self.reader = csv.reader(f,delimiter = Adelimiter)
TypeError:内置操作的坏参数类型
命令
print" Adelimiter:", Adelimiter,len(Adelimiter)
打印
Adelimiter:,1
所以我认为Adelimiter还可以吗?!
那里有什么问题?
这是Python 2.3.5。
Thx,
Florian
Hello,
I''ve one problem using the csv module.
The code:
self.reader = csv.reader(f, delimiter = ",")
works perfectly. But when I use a variable for delimiter:
self.reader = csv.reader(f, delimiter = Adelimiter)
I get the traceback:
File "/home/florian/visualizer/ConfigReader.py", line 13, in __init__
self.reader = csv.reader(f, delimiter = Adelimiter)
TypeError: bad argument type for built-in operation
The command
print "Adelimiter: ", Adelimiter, len(Adelimiter)
prints
Adelimiter: , 1
So I think Adelimiter is ok?!
What is wrong there?
It is Python 2.3.5.
Thx,
Florian
推荐答案
[Florian]
[Florian]
我在使用csv模块时遇到了一个问题。
代码:
self.reader = csv.reader(f,delimiter ="," ;)
完美无缺。但是当我使用变量作为分隔符时:
self.reader = csv.reader(f,delimiter = Adelimiter)
我得到了追溯:
文件" /home/florian/visualizer/ConfigReader.py",第13行,在__init__
self.reader = csv.reader(f,delimiter = Adelimiter)
TypeError:错误的参数类型内置操作
I''ve one problem using the csv module.
The code:
self.reader = csv.reader(f, delimiter = ",")
works perfectly. But when I use a variable for delimiter:
self.reader = csv.reader(f, delimiter = Adelimiter)
I get the traceback:
File "/home/florian/visualizer/ConfigReader.py", line 13, in __init__
self.reader = csv.reader(f, delimiter = Adelimiter)
TypeError: bad argument type for built-in operation
这是你的问题吗?:
Is this your problem?:
Adelimiter = u'',''
reader = csv.reader(f,delimiter = Adelimiter)
Traceback(最近一次调用最后一次):
File" ;< stdin>",第1行,在?
TypeError:内置操作打印类型的坏参数类型(Adelimiter)
Adelimiter = u'',''
reader = csv.reader(f, delimiter=Adelimiter) Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: bad argument type for built-in operation print type(Adelimiter)
< type''unicode''>
-
Richie Hindle
ri **** @ entrian.com
<type ''unicode''>
--
Richie Hindle
ri****@entrian.com
Richie Hindle写道:
Richie Hindle wrote:
[Florian]
[Florian]
我在使用csv模块时遇到一个问题。
代码:
self.reader = csv.reader(f,delimiter =",")
完美无缺。但是当我使用变量作为分隔符时:
self.reader = csv.reader(f,delimiter = Adelimiter)
我得到了追溯:
文件" /home/florian/visualizer/ConfigReader.py",第13行,在__init__
self.reader = csv.reader(f,delimiter = Adelimiter)
TypeError:错误的参数类型内置操作
I''ve one problem using the csv module.
The code:
self.reader = csv.reader(f, delimiter = ",")
works perfectly. But when I use a variable for delimiter:
self.reader = csv.reader(f, delimiter = Adelimiter)
I get the traceback:
File "/home/florian/visualizer/ConfigReader.py", line 13, in __init__
self.reader = csv.reader(f, delimiter = Adelimiter)
TypeError: bad argument type for built-in operation
这是你的问题吗?:
Is this your problem?:
Adelimiter = u'',''
reader = csv.reader(f,delimiter = Adelimiter)Traceback(最近一次调用最后一次):
文件"< stdin>",第1行,在?
TypeError:bad内置操作打印类型的参数类型(Adelimiter)
Adelimiter = u'',''
reader = csv.reader(f, delimiter=Adelimiter) Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: bad argument type for built-in operation print type(Adelimiter)
< type''unicode''>
<type ''unicode''>
是的,这就是我的问题。
你的意思是csv.reader不能用unicode作为分隔符参数吗?
对不起,我不是''真的明白你的观点你说的是......
Florian
Yes, thats my problem.
You mean that csv.reader can''t work with unicode as the delimiter parameter?
Sorry, I don''t really get your point what you''re saying...
Florian
[Florian]
[Florian]
你的意思是csv.reader不能用unicode作为分隔符参数?
You mean that csv.reader can''t work with unicode as the delimiter parameter?
完全正确。 http://www.python.org/ doc / 2.3.5 / lib / module-csv.html 说:
"注意:此版本的csv模块不支持Unicode输入。此外,
目前有一些关于ASCII NUL字符的问题。因此,
所有输入通常应该是可打印的ASCII,以确保安全。这些限制
将来会被删除。
这个说明仍然存在于当前的开发文档中,所以看起来好像
它还没有被修复。
-
Richie Hindle
ri **** @ entrian。 com
Exactly. http://www.python.org/doc/2.3.5/lib/module-csv.html says:
"Note: This version of the csv module doesn''t support Unicode input. Also,
there are currently some issues regarding ASCII NUL characters. Accordingly,
all input should generally be printable ASCII to be safe. These restrictions
will be removed in the future. "
That note is still there in the current development docs, so it looks like
it hasn''t yet been fixed.
--
Richie Hindle
ri****@entrian.com
这篇关于csv模块的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!