python进阶之路
学海苦行,逆流而上
本地跑些py脚本,加上自带的lib,可以完成很多场景的应用开发。和java一样,你就使用jdk自带tool,也可以完成一座大楼的建立,就是苦了些(一切从头来)。python也是如此,自带库肯定是必须掌握的,很多无网情况下,只能人肉从头开发。
高级就是要站在巨人肩膀上。
类似java的maven中央仓库,python也有自己中央仓库pip:https://pypi.org/
还有想docker image registry一样,都是中央仓库机制,同时支持私服(私有仓库)。
类似maven,pip也是本地一个工具,python install pip安装即可。pip有个本地仓库site-packages,和maven的repository一样。默认site-packages在python安装目录lib里,idea工具会把这个目录加载进开发环境,所以在代码里import package-names 即可用。
项目迁移高效做法就是直接负责site-packages文件夹,和maven的repository直接复制一样,提供迁移效率(网络永远只是辅助)。
特地引入了requests包,用来演示pip引入机制。顺道,研究了module机制,就是引入自己的packge,一版就是目录级管理。高级的就是上传自己的package到中央仓库供别人使用(暂时不研究了,以后出现场景时,再搞也不迟)。
def post(url, data=None, json=None, **kwargs):
r"""Sends a POST request.
:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
object to send in the body of the :class:`Request`.
:param json: (optional) json data to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:return: :class:`Response <Response>` object
:rtype: requests.Response
"""
return request('post', url, data=data, json=json, **kwargs)
python搞定一个http post请求真心简单,这里json数据格式可直接写,和javastrict语法机制一样,天然支持json。json要是在java里写很麻烦,一堆“{}”,容易缺这缺那。
还是回到python定为,在我个人看来,作为一个万能的脚本,搞定‘短平快’需求,python处于绝对地位,想perl、shell、bat之类脚本靠后、靠后。