csv模块的问题 [英] Problems with csv module

查看:69
本文介绍了csv模块的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,

我在使用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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆