学习Python csv模块遇到AttributeError: module 'csv' has no attribute 'writer'和写入后出现空格问题
今天在看Python cookbook 这本书中讲csv写入的时候,我按照书中的代码敲到pycharm中 一运行 报错AttributeError: module 'csv' has no attribute 'writer',刚开始以为是Python 2.x 和Python 3.x 的原因 一查文档 ,发现不是,2.x和3.x csv模块并没有不同。然后开始百度,然后在stackoverflow上面看到了一个回答。见下图:
然后我发现我自己命名的Python文件就叫做csv.py。然后我import的csv。其实就是我自己写的那个文件。然后我把文件名改为csvdemo.py,然后运行就正常不报错了。 但是在我打开我写入csv文件,我发现我的csv文件里每写一行数据,它就会空一行,查资料发现,open()函数有个参数newline,当写入的时候,如果没有newline参数的话,在windows这种使用'\r\n'的系统中,会自动在行尾加上\r,然后写入的时候就会空一行。加入newline后,会报错 TypeError: 'newline' is an invalid keyword argument for this function 错误解决 具体解决办法见:http://www.net188.com/thread-128-1-1.html
最后,学习Python,感觉自己以后还得多细心,比如open函数的参数,自己虽然学过,但是自己并没有搞明白它。
|