怎样上传整洁的python项目
2018-11-29 本文已影响0人
无火余灰
背景
- 超级萌新的操作,大佬请不要看啦
- 问题简单来说,用pycharm创建的pure python project 怎么上传到git 比较合适
- 这些内容,我相信大家都会做,今天也就是出于一个为什么
知识背景
- python是一种解释性语言,没有编译,直接解释,所以在Python中方法必须提前声明。
- 一个项目会有很多的依赖,不同项目的依赖各不相同,然而Python会默认将所有的依赖都置于默认解释器的site-packages下,那就存在一个问题,两个Python项目都是用的同一个包,但是版本不同,灾难就出现了,因此出现了虚拟环境这个说法更多请戳这里
how to do
-
创建项目时使用 virtual environment
创建项目.png - 我们新建一个Test.py,从百度拿一下respons,这时你查一下venv文件夹,就引入了一个requests包
import requests
response = requests.get('http://www.baidu.com')
print(response.content)
- 开发到这里,你心想,大功告成,赶紧push吧,那你push venv嘛?
- 答案是不push,一个理由就够了,很丑。。。。。。。
- 此时你看一眼remote 就孤零零的一个Test.py,你会怀疑这clone下来能跑吗?可以,但是请注意当你clone的时候,需要再次设置虚拟环境 idea 官方教程
- 这时你又心满意足了,可引入了包,包的版本呢?版本呢?别忘了此时你的项目是这样子的传送门
- 这里就需要requirements.txt保存一个依赖环境
pip3 freeze > requirements.txt #生成
pip install -r requirements.txt # 安装依赖
- 你以为到此为止了吗?当你一遍一遍的看见下面这个场景的时候,也会觉得很烦吧 Screen Shot 2018-11-29 at 5.04.59 PM.png
- 这就是.gitignore的作用了,新建一个.gitignore 然后添加这两文件夹
.idea
venv
- 这时你git status的时候,世界终于清净了
迷思
- 我使用python,只写过爬虫,用过requests,py-spider这种库,当然了爬的嘛,不是学校的种子就是什么不可描述的东西,知乎之类的,都比较基础,所以出门也不敢说自己会python,还给游戏写过定时快照的脚本。
- 大多数时候,我是属于那种实用型程序员,能跑起来,找到方向,我就很高兴,往往就起身去个卫生间,站起来活动一下。平心而论,我比较少的关注代码的整洁性。
- 我是一个不喜欢行百里者半九十的人,所以心底想的其实是,这件事做到九十,可能就做不下去了,怎么样都不是完美的,所以大概也就只是抱着做一下的态度。但是当项目真的要去给被人看的时候,我发现,我应该一点一点做才对, 不积跬步无以至千里,不积小流无以成江海。