Python PrettyTable示例

时间:2013-09-03 21:20:18

标签: python python-module

所以我有一个我从文档中复制的PrettyTable示例,但是我收到了一个错误。

#!/usr/bin/python

from prettytable import PrettyTable
import csv

x = PrettyTable(["City name", "Area", "Population", "Annual Rainfall"])
x.align["City name"] = "l" # Left align city names
x.padding_width = 1 # One space between column edges and contents (default)
x.add_row(["Adelaide",1295, 1158259, 600.5])
x.add_row(["Brisbane",5905, 1857594, 1146.4])
x.add_row(["Darwin", 112, 120900, 1714.7])
x.add_row(["Hobart", 1357, 205556, 619.5])
x.add_row(["Sydney", 2058, 4336374, 1214.8])
x.add_row(["Melbourne", 1566, 3806092, 646.9])
x.add_row(["Perth", 5386, 1554769, 869.4])
print x

这是我得到的错误。

Traceback (most recent call last):
File "/home/definity/Desktop/Cloud/code/Python/Finacial.py", line 3, in <module>
from prettytable import PrettyTable
File "/usr/local/lib/python2.7/dist-packages/prettytable-0.7.2-     py2.7.egg/prettytable.py", line 35, in <module>
import csv
File "/home/definity/Desktop/Cloud/code/Python/csv.py", line 6, in <module>
reader = csv.reader(ifile)
AttributeError: 'module' object has no attribute 'reader'
[Finished in 0.1s with exit code 1]

为什么我从第一个例子中得到错误?

1 个答案:

答案 0 :(得分:5)

您的 csv.py 脚本旁边可能有一个名为Finacial.py的文件,该文件隐藏了内置的csv模块 - 从而导致其导入(更准确地说:属性访问)失败。

可能是/home/definity/Desktop/Cloud/code/Python/csv.py,但也可能是/home/definity/Desktop/Cloud/code/Python/csv.pyc,甚至是csv文件夹。