当前位置: 首页 > 科技观察

超实用的Python环境搭建与神器推荐!抓紧时间收藏

时间:2023-03-21 22:18:07 科技观察

今天我会告诉大家如何搭建一个舒服的Python环境,包括本地环境和远程调试环境,然后再给大家送上两套好用的Pythonweb框架。在这个过程中,也穿插了一些适合初学者的神器。希望大家喜欢~1安装Python第一步当然是安装Python。1.1Mac系统Mac系统默认安装Python2.7。我们如何安装另一个Python3?首先推荐大家安装神器HomeBrew作为命令行下的管理软件。HomeBrew的安装方法:ruby-e"$(wget-O-https://raw.github.com/Homebrew/linuxbrew/go/install)"安装完成后使用brewhelp命令查看brew的各种用法。现在我们只需要使用这个命令:brewinstallpython3,即可以轻松安装python3。然后我们就可以使用brewinfopython2或者brewinfopython3来查看Python2/3的具体信息,妈妈再也不用担心我找不到Python的位置了!***,使用brewlist查看当前通过brew安装的所有命令行工具,使用brewhelp查看其他使用情况。1.2Ubuntu系统Ubuntu系统默认使用包管理工具apt。使用以下命令安装python:aptinstallpython2#installpython2aptinstallpython3#installpython3然后,在Ubuntu下有两点需要注意。一个是Python所在的位置,我们使用whereis命令查看所在文件夹:whereispython,另一个是Pip的安装——Pip是Python的一个包管理插件。首先安装setuptools:wget--no-check-certificatehttps://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26tar-zxvfsetuptools-19.6.tar.gzcdsetuptools-19python3setup.pybuildpython3setup.pyinstall然后为Python3安装pip:wget--no-check-certificatehttps://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eebtar-zxvfpip-8.0.2.tar.gzcdpip-8.0.2python3setup.pybuildpython3setup.pyinstall然后输入pip3,如果有正常回车,那就大功告成了!1.3轻松分离Python2/3有时我们只想使用Python3,但是Python2会干扰,那么如何解决呢?这很简单。想用Python3的时候不输入Python而是输入Python3。使用Python3的pip时,不输入pip,输入pip3。比如安装FlaskforPython3:pip3installFlask2Pycharm神器管理本地环境那么当当,我们的第二个神器登场了,就是大名鼎鼎的Pycharm代码编辑器。https://www.jetbrains.com/pycharm/Pycharm分为社区版(免费)和专业版(付费)。两者最大的区别在于付费版的Pycharm支持远程调试。2.1创建一个新项目让我们创建一个新项目。主要有两个参数,一个是Location,项目的地址。第二个是ProjectInterpreter项目解释器,就是你要用哪个Python。如果选择Newenvironmentusing,就是新建一个不干扰本地安装的Python的虚拟环境。如果选择ExistingInterpreter,则使用机器现有的环境。如果本地安装的Python没有出现怎么办?然后点击***旁边的省略号,选择SystemInterpreter,再次点击省略号添加。然后我们找到Python的位置并添加它。如何找到Python位置?请参阅***部分。2.2更改现有项目的环境一开始配置错误怎么办?单击Pycharm>首选项>项目>项目解释器设置。2.3在Pycharm中安装包在Pycharm中,安装Python包有两种方式。一种方法是在刚才的ProjectInterpreter界面中使用加号和减号来安装和卸载包。在安装一两个包的情况下,此方法是一种简单的方法。那么包裹多了怎么办?这个时候我们就用pip。一般来说,github中标准的python源码都会提供一个文件叫requirements.txt,里面记录了要安装的包的名称和版本。然后我们在Pycharm中打开终端窗口:只要进入requirements.txt所在的目录,使用pip3install-rrequirements.txt命令导入当前python环境下所有需要的包即可,非常方便。那么,我们在做项目的时候,如何生成requirements.txt供自己和他人使用呢?同样的事情可以用一行命令完成:pipfreeze>requirements.txt。怎么样,你拿到了吗?3Pycharm让远程调试变得简单有时候,我们会涉及到在服务器上运行Python程序,所以我们需要在Pycharm上做一些配置。请注意,只有PycharmPro支持远程调试。3.1配置远程连接首先,假设我们手边有一台服务器,并且有服务器的账号和密码。然后打开Tools>Deployment>Configuration>new,填写以下内容:SFTPhost:服务器地址Port:端口,默认22,一般不用改。根路径:服务器上的路径。用户名:服务器上的用户名密码:服务器上的密码然后点击映射:本地路径:本地地址映射到服务器上的相应位置部署路径:服务器上的文件夹位置。Rootpath+Deploypath就是我们的文件在服务器上的完整路径。配置完成后,点击Tools>BrowseRemoteHost,右侧出现我们服务器上的文件,说明远程连接成功!添加远程Python解释器接下来,我们添加一个远程Python解释器,这样我们就可以在本地“远程”远程服务器来执行我们的Python程序。点击Pycharm>Preference>Project>ProjectInterpreter>SSHInterpreter输入地址、用户名和密码三件套。好了,尝试在服务器上运行HelloWorld!4PythonWeb环境搭建这里是本文的重头戏——如何使用Python在服务器上搭建网站。这里推荐Python-Flask+Nginx+Gunicorn+Supervisor+Sqlite的方案,因为这些软件对新手都非常友好。其中,Python-Flask为后端核心,Nginx为前端服务器,Gunicorn为后端服务器,Supervisor为进程监控软件,Sqlite为轻量级数据库。4.1配置Python-Flask框架首先,我们gitclone一个Python框架。没有数据库的Flask框架:https://github.com/albertschr/MixinEOSPlayer/tree/master/Python/FlaskSketchNosql有数据库的Flask框架:https://github.com/albertschr/MixinEOSPlayer/tree/master/Python/Flask_Sketch然后首先在服务器上安装必要的Python包:pipinstall-rrequirements.txt然后测试框架是否可以正常运行:python3run.py如果显示`Runningonhttp://127.0.0.1:5000,说明框架运行正常。4.2安装Nginx、Gunicorn和Supervisor在服务器上运行:aptinstallnginxpip3installgunicornaptinstallsupervisor4.3修改nginx配置文件nginx配置文件在/etc/nginx/sites-available目录下,默认文件。服务器{听80;听[::]:80;服务器名称example.com;根目录/home/git;索引index.html;位置/{try_files$uri$uri/=404;我们做了两件事:将root更改为我们的前端文件所在的目录。添加一行expires-1;在允许页面立即刷新的位置。4.4配置supervisor在你喜欢的目录下生成supervisor.conf文件:echo_supervisord_conf>supervisor.conf#生成supervisor默认配置文件打开配置文件:nanosupervisor.conf在最下面添加:[program:[projectname]]command=gunicorn-w4-b0.0.0.0:1234运行:应用程序;supervisor启动命令,文件名为run.py,run.py中执行的类名为app。directory=[项目目录];项目文件夹路径startsecs=0;启动时间stopwaitsecs=0;终止等待时间autostart=false;是否自动启动autorestart=true;程序异常退出后自动重启startretries=3;启动失败自动重启尝试次数,默认3次stdout_logfile=[日志目录]/gunicorn.logstderr_logfile=[日志目录]/gunicorn.err把上面的项目名、项目目录、日志目录改成你自己的。4.5修改run.py将run.py从本地运行改为在服务器端运行。注释掉app.run这一行,加入如下代码:if__name__=='_main_':app.run(host="0.0.0.0",debug=True)#不需要填写端口,因为一切都已经完成装在gunicorn好吧。执行以下命令,你的后端服务器就运行起来了!supervisorctl-csupervisor.confreloadsupervisorctl-csupervisor.confstartall4.6supervisor使用supervisord-csupervisor.conf通过配置文件启动supervisorsupervisorctl-csupervisor.confstatus查看supervisor状态supervisorctl-csupervisor.confreloadreload加载配置文件supervisorctl-csupervisor.confstart[all]|[appname]启动指定/所有supervisor管理的程序进程supervisorctl-csupervisor.confstop[all]|[appname]关闭指定/所有supervisor管理的程序进程4.7小bug在supervisor中有时由于服务器重启等原因,supervisor中会出现错误:error:,[Errno2]Nosuchfileordirectory:file:/usr/lib/python2.7/socket.pyline:228这时候运行下面两条命令:sudosupervisord-c/etc/supervisor/supervisord.confsudosupervisorctl-c/etc/supervisor/supervisord.conf然后执行:supervisorctl-csupervisor.conf重新加载即可解决.5小结对于初学者来说,搭建Python环境有时是件很费力的事情。因此,我在这篇文章中整合了搭建Python环境的五项基本技能:如何安装Python如何安装和使用PipPycharm如何在本地配置Pycharm如何配置远程调试环境如何搭建基于Python的服务器服务器上的核心网站希望对大家有所帮助!