pyCharm 创建一个FastApi web项目,实现接口调用

目录

FastApi和Django区别

创建项目

新建解释器(建议)

 先前配置解释器(不建议,可能没有默认文件)

结果 

API自动化文档


FastApi和Django区别

我这边演示项目使用的fastApi作为web框架,当然主流一般都是使用Django做web框架,但是Django是一个重量级web框架他有很多组件,如授权,分流等全套web功能。我这边呢只需要有个接口可以被别人调用,不需要太多复杂功能,其他的功能只需要后期在增加的即可。所以这种情况下我选用FastApi。

如果你懂java我就说这个具体区别有点像java的springCloud全家桶框架和springboot的区别,下图是常用web框架排名。

创建项目

点击左上角文件-->新建项目

新建解释器(建议)

 一个python项目首先需要安装具体python环境,也是下图提示的解释器,你可以自行下载对应版本解释器。

我这边直接使用默认的解释器,一般来说当你下载pyCharm的时候他会默认给你带个默认解释器,这和你的pyCharm版本有关,我的是3.9。

选上项目位置写上项目名,选择fastApi,点击创建即可创建一个FastApi项目。

点击创建

 上图位置代表存放FastApi所需要的包,Lib是默认包,Scripts一般是存放python环境文件。

 先前配置解释器(不建议,可能没有默认文件)

选择下图,点击添加解释器,一般是你曾经做过这个FastApi项目,已经有默认包才会这么做,否则你可能创建的文件是个空文件,没有默认接口文件。

结果 

显示下图,创建成功

点击启动

 如果遇到ERROR: [WinError 10013] ��һ�ַ���Ȩ�޲�����ķ�ʽ����һ�������׽��ֵij��ԡ�问题点击下面链接:Python启动提示ERROR: [WinError 10013] ��һ�ַ���Ȩ�޲�����ķ�ʽ����һ�������׽��ֵij��ԡ�-CSDN博客

启动成功,点击下图标记位置

API自动化文档

ip后缀加/docs,进入swagger自动化文档

ip后缀加/redoc,自动进入ReDoc自动化文档

------------------------------------------与正文内容无关------------------------------------
如果觉的文章写对各位读者老爷们有帮助的话,麻烦点赞加关注呗!小弟在这拜谢了!
如果您觉得我的文章在某些地方写的不尽人意或者写的不对,从而让你对你人生观产生颠覆(概不负责),需要斧正,麻烦在评论区不吝赐教,作者看到后会根据您的提示查阅文章进行修改,还这世间一个公理一片蓝天
 

### 解决Python `pickle`模块和不同版本的NumPy之间兼容性问题 当使用`pickle`序列化包含NumPy数组的对象时,可能会遇到由于NumPy版本差异引起的反序列化失败问题。为了确保跨环境的一致性和稳定性,建议采取以下措施: #### 方法一:指定协议版本 通过设置较高的`protocol`参数值,在保存模型或对象时可以提高向后的兼容性。较高版本的协议通常具有更好的性能以及更广泛的兼容性。 ```python import pickle with open('model.pkl', 'wb') as f: pickle.dump(obj, f, protocol=pickle.HIGHEST_PROTOCOL) # 使用最高支持的协议级别[^1] ``` #### 方法二:固定依赖库版本 在项目环境中锁定特定版本的NumPy和其他相关包,防止因更新而导致潜在的问题。这可以通过创建虚拟环境并记录所有安装软件的确切版本号来实现。 对于新项目的初始化阶段,推荐利用工具如`pipenv`, `poetry` 或者传统的`requirements.txt` 文件来管理这些依赖关系。 #### 方法三:转换为通用格式再存储 如果可能的话,考虑先将NumPy数组转化为其他更加稳定的交换格式(例如HDF5),然后再将其写入磁盘。这样做的好处在于即使未来NumPy API 发生变化,仍然能够读取旧的数据文件。 ```python import h5py # 将 NumPy 数组保存至 HDF5 文件 with h5py.File("data.hdf5", "w") as f: dset = f.create_dataset("dataset_name", data=numpy_array) # 加载 HDF5 文件中的 NumPy 数组 with h5py.File("data.hdf5", "r") as f: numpy_array_loaded = f["dataset_name"][:] ``` 这种方法不仅解决了版本控制难题,还提供了更高的灵活性和支持多种编程语言的能力[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A乐神

恭喜发财啊,老板,嘻嘻!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值