准备学 Python 了,请问 Python 的环境配置一般怎么办?

2017-10-27 21:58:04 +08:00
 ericgui
我用 windows 10
比如用 Scrapy,装 lxml 就会出问题
有人建议我 cygwin
这样还是会全局安装的吧?
那么需要用 virtualenv 吗
还是说直接用 conda

然后 mysql,由于我是学 php 的,php 有很多安装包,比如 xampp,wamp,这种,有 apace,mysql,php,一键安装。还有 phpmyadmin,还是非常好用得。
卸载也很好卸载,卸载得非常干净。
所以想请教 mysql 大家都是怎么装的?上官网下安装包,然后再安装 mysql bench ?

再还有就是 server

总之,大家一般本机上怎么配置 python 的?

我最大的担心万一折腾出翔了,就要重装系统。
目前 PHP 完全没这个担心

谢谢
10779 次点击
所在节点    Python
92 条回复
wangxl123
2017-10-28 12:46:42 +08:00
Anaconda 不错
auhah
2017-10-28 12:59:50 +08:00
初学就别折腾这些东西了吧。。。学习要紧

折腾半天这个好那个好最后兴趣缺失学不下去就坑了

---------不会 py 但有过类似经历的人留
carlclone
2017-10-28 13:00:47 +08:00
@ldn9901 长得真丑
passion336699
2017-10-28 13:03:15 +08:00
安装 Python3 (一般 Python2 都会有)、virtualenv
在每一个 PY 项目根目录,用 virtualenv 创建一个虚拟环境,如 env/
如果用 Git 这种版本控制工具的话,可以把 env/ 忽略提交,
用 pip freeze > requirements.txt 这个命令生成 虚拟环境里面的项目依赖,
部署在其他服务器或者 PC 上时,创建一个同样 PY 版本干净的虚拟环境
然后用命令 pip install -r requirements.txt 下载好项目依赖包至你的当前虚拟环境

=====一定要记住 source ./env/bin/active 先激活虚拟环境,然后再跑其他 pip install 或者其他的命令!
=====Win 下用 .\env\Scripts\active.bat 激活虚拟环境

最近也刚开始学,这个虚拟环境搞了好久,感觉有点类似 npm。
node_modules/ 类似 env/
requirements.txt 类似 package.json

一点愚见,有误请别采纳:P
passion336699
2017-10-28 13:08:35 +08:00
本地开发,上框架如 Flask、Django 这种,都会自带一个 server,你如果用这类框架的话,官方 DOC 都会有启动服务器的方法。
如果是部署到服务器,我现在用的 Gunicorn 配置本地端口来跑 PY 项目,再用 Nginx 代理这个端口。
网上还有用 supervisord 去管理进程,这样可以用 supervisordctl restart/stop 你的 PY 项目,也挺方便。
7colcor
2017-10-28 13:39:24 +08:00
我记得不久前也有个”准备学“,这个是那个的 2.0 版本?
qiukun
2017-10-28 13:46:33 +08:00
唔。。微软有在线 notebook google 也有 cocalc 也有
leekafai
2017-10-28 13:56:38 +08:00
我的感觉是,学习 python,最难的部分就是 win 里的环境配置,而这部分学起来是最没有性价比的,因为我也是这样过来的。
建议还是虚拟机 linux
twistedmeadows
2017-10-28 14:35:12 +08:00
win 的话我还是强烈推荐 anaconda 的。
这两年每次在 win 上配环境都相当头痛,公司同事让我帮忙都直接给他们装 anaconda 了
likuku
2017-10-28 14:45:39 +08:00
装虚拟机啊。

虚拟机折腾前来个快照,折腾出问题了,快照一键恢复。
liz2nku
2017-10-28 14:50:58 +08:00
为什么之前几个说 docker 的都被无视了
SuperMild
2017-10-28 14:55:41 +08:00
其实初学者用 win 直接折腾是最方便的,根本不怕折腾坏系统,因为 win 上本来就没有东西依赖 python !
SuperMild
2017-10-28 14:57:39 +08:00
不过话说回来,我自己是用 anaconda 的
ericgui
2017-10-28 15:12:36 +08:00
@liz2nku 因为不会玩啊
ericgui
2017-10-28 15:13:26 +08:00
@leekafai 想做正经的开发,python web 开发,以及一些生物信息学方面的开发。所以还是要装好一个本地环境的。
ericgui
2017-10-28 15:15:54 +08:00
@passion336699 非常感谢,我马上研究一下。本地就不用装 nginx 了,确实会非常费劲。
passion336699
2017-10-28 16:18:25 +08:00
@ericgui 像 Flask Django 这类 PY 的框架,都内置一个 web server,根目录有一个 manage.py
source ./env/bin/active 激活虚拟环境之后,python manage.py runserver 就会代理 localhost 一个端口,当然也能定义参数切换端口 python manage.py runserver 8088 or python manage.py runserver 0.0.0.0:8088,服务器上没有配置域名可以用 0.0.0.0,然后就可以用浏览器,服务器 IP+PROT 直接访问了。
就可以跑项目了。支持热加载,你修改文件保存之后,不需要停止 server,重新开启服务,它自己会 reload。
不过如果你新增了文件,是不会触发这个 reload 的,就需要 Control+C,停止 server,然后在跑一遍 runserver。
passion336699
2017-10-28 16:22:06 +08:00
Win 下就是需要折腾下环境变量吧,这个不算太耗时间吧。。
把 Python virtualenv pip 那些往 PATH 里面加一下,和 java jdk 那些配置差不多吧
ericgui
2017-10-28 16:27:32 +08:00
@passion336699 感谢热情回复!
looca
2017-10-28 16:45:20 +08:00
我是装在 vps 上,用 jupyter notebook 远程访问。除了慢点,其他都还好。不过我就是会写 hello world 而已

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/401395

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX