python安装faker包后引用时报错ImportError The “fake-factory“ package is now called “Faker“...

Faker是一个可以让你生成伪造数据的Python包。当你需要初始化数据库,创建美观的XML文档,不断产生数据来进行压力测试或者想从生产服务器上拉取匿名数据的时候,Faker将是你最棒的选择。
Faker的安装过程可以参考Faker:Python的伪造数据生成器 这篇文章,其实就是用pip一条命令:

pip install fake-factory

安装后记得验证,在python命令行下输入:


from faker import Factory

如果安装正常,按下Enter键后不会出现任何异常信息。我在ubuntu server 16.04上安装后,验证时报如下错误:


 import factory
 File "/venv/lib64/python3.5/site-packages/factory/__init__.py", line 46, in <module>
 from .faker import Faker
 File "/venv/lib64/python3.5/site-packages/factory/faker.py", line 41, in <module>
 import faker
 File "/venv/lib64/python3.5/site-packages/faker/__init__.py", line 7, in <module>
 raise ImportError(error)
ImportError: The ``fake-factory`` package is now called ``Faker``.

搜索后发现这个问题很多人都遇到过,参见 https://github.com/FactoryBoy/factory_boy/issues/334 。问题原因与解决方案在这帖子里都有。简单来说,就是fake-factory所依赖的一个包factory_boy在安装特定版本时会下载的内容有问题。我使用帖子里说的一个办法解决了这个ImportError问题,即使用requirements.txt来指定所要装的python包版本。
有关python中requirements.txt的使用可参考此文章:python笔记—需求文件requirements.txt的创建及使用 
在python 虚拟环境中,先使用

pip freeze >requirements.txt

获取现有环境中的python包,然后在requirements.txt中追加如下内容:

fake-factory==0.7.4
factory-boy==2.7.0

然后调用下面这条命令,等待安装完成即可。

pip install -r requirements.txt

顺便提一句,需要创建这个虚拟环境的完全副本时,可以创建一个新的虚拟环境,并在其上运行上面这条命令即可。

`pyecharts.faker` 是 Pyecharts 库中的一个模块,它提供了一组虚假数据用于快速生成图表数据。`Fake` 是该模块中的一个类,它利用了一些现成的数据生成器,比如 `faker`,来生成虚构的数据集。这些数据可以用于 Pyecharts 的图表中,帮助开发者在没有实际数据的情况下,快速创建和展示图表效果,以便进行样式或功能上的测试和验证。 使用 `Fake` 类非常简单,你只需要从 `pyecharts.faker` 模块中导入 `Fake`,然后可以直接调用它的方法来获取所需的数据。例如,你可以使用 `Fake.choose()` 来随机选择一些假名字,或者使用 `Fake.values()` 来生成一些随机的数值数据。 这里是一个简单的示例代码,展示如何使用 `Fake` 类生成一些随机数据,并将其应用到 Pyecharts 的柱状图中: ```python from pyecharts.charts import Bar from pyecharts import options as opts from pyecharts.faker import Fake # 使用 Fake 生成一些假数据 x_data = Fake.choose() y_data = Fake.values() # 创建一个柱状图并添加数据 bar = Bar() bar.add_xaxis(x_data) bar.add_yaxis("商家A", y_data, markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max", name="最大值"), opts.MarkPointItem(type_="min", name="最小值")])) bar.set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例")) bar.render() ``` 在上述代码中,我们首先导入了必要的模块和类,然后使用 `Fake.choose()` 和 `Fake.values()` 生成了 `x_data` 和 `y_data`。接着,我们创建了一个柱状图,向其中添加了假数据,并进行了基本的配置,最后渲染生成了图表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值