Python问题:(文件名与函数库名相同引起的错误) 引用pygal.Bar()发生错误:module ‘pygal’ has no attribute ‘Bar’
import pygal
from die import Die
die=Die()
results=[]
for roll_num in range(1000):
result = die.roll()
results.append(result)
#分析结果
frequencies = []
for value in range(1,die.num_sides+1):
frequency = results.count(value)
frequencies.append(frequency)
#print(frequencies)
#对结果可视化
hist = pygal.Bar()
hist.title = "Result of rolling one D6 1000 times."
hist.x_labels=['1','2','3','4','5','6']
hist.x_title = "Result"
hist.y_title = "Frequency of Result"
hist.add('D6',frequencies)
hist.render_to_file('die_visual.svg')
发生错误:
AttributeError: module 'pygal' has no attribute 'Bar'
查找原因:
import pygal
help(pygal)
结果:
Help on package pygal:
NAME
pygal
PACKAGE CONTENTS
die
die_visual
e
FILE
f:\mypython\pygal\__init__.py
再结合自己创建的文件名
可知自己创建的文件名与函数库名相同造成的错误
因此更改自己创建的文件名即可解决问题