神级教程:Python环境搭建指南

开课吧开课吧锤锤2021-06-15 16:17

    如何搭建一个舒适的Python环境,包括本地环境和远程调试环境,然后再附送给大家两套好用的PythonWeb框架。在这个过程中,还穿插着介绍一些适合于初学者的神器,希望大家中意~

py

    搭建Python环境对于初学者来说,有时候还挺费劲。因此,我把Python环境搭建中的五项基础技能集成在这一篇文章里啦:

    -如何安装Python

    -如何安装及使用Pip

    -Pycharm本地怎么配置

    -Pycharm如何配置远程调试环境

    -怎么在服务器上搭一个以Python为后端核心的网站

    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:

apt install python2 
#安装python2

apt install python3 
#安装python3

    然后,在Ubuntu下有两点是需要注意的。一个是Python的定位,我们用whereis命令来查看其所在的文件夹:

whereis python

    另一个是Pip的安装。Pip是Python的包管理插件。

    首先安装setuptools:

    wget--no-check-certificatehttps://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26

    tar-zxvfsetuptools-19.6.tar.gzcdsetuptools-19.6python3setup.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.3Python2/3轻松分离

    有时候我们只想使用Python3,但是Python2会干扰到,那么怎么解决呢?很简单,在要用Python3的时候不是输入Python而是输入Python3,在使用Python3的pip的时候不是输入pip而是输入pip3。例如,给Python3安装Flask:

    2Pycharm神器管理本地环境

    然后,当当,就是我们第二个神器登场啦,就是大名鼎鼎的Pycharm代码编辑器。

    Pycharm分为社区版(免费)和专业版(付费),二者最大的区别就是付费版本的Pycharm支持远程调试。

    2.1创建新项目

    我们来创建一个新项目。

py

主要的参数有两个,一个是Location,项目的地址。第二个是ProjectInterpreter项目解释器,也就是你要使用哪个Python。如果选择Newenvironmentusing呢,就是新建一个虚拟环境,和本机安装的Python互不干扰。如果选择ExistingInterpreter,则是使用本机的现有环境。

    如果本机安装的Python没显示怎么办?那么点击最后边的省略号,选择SystemInterpreter,再点击一次省略号,就能添加了。py

    然后我们找到Python的所在位置,添加即可。如何找到Python位置?请见第一部分。

    2.2改变已有项目的环境

    如果一开始配置错了,那么该怎么办呢?点击Pycharm>Preference>Project>ProjectInterpreter设置即可。

py

py

    2.3Pycharm中包的安装

    在Pycharm中,安装Python的包有两种方法,一种方法是在刚才的ProjectInterpreter界面里,使用加减号进行包的安装与卸载。

py

    在安装一两个包的情况下,这种方法是一种简便的方法。那么如果是很多的包呢?这种时候我们就要用到pip了。

    一般而言,github中规范的python源码会提供一个叫requirements.txt的文档,文档里记录的是要安装的包的名称以及版本。

py

    然后我们打开Pycharm里的终端窗口:

py

    只要到requirements.txt所在的目录下,使用pip3install-rrequirements.txt命令,就能在当前的python环境中导入所有需要的包啦,很方便。

    那么,我们在做项目的时候,如何生成requirements.txt以供自己和他人使用呢?同样是一行命令就能搞定的事:pipfreeze>requirements.txt。

    怎么样,你get了吗?

    3Pycharm轻松实现远程调试

    某些时候,我们会涉及到在服务器上运行Python程序,那么我们就需要对Pycharm做一些配置。

    注意,只有PycharmPro支持远程调试。

    3.1配置远程连接

    首先,假定我们手头有一台服务器,并有服务器的账号和密码。

    然后打开Tools>Deployment>Configuration>new

py

   如下内容是要我们填写的:

    SFTPhost:服务器地址

    Port:端口,默认22,一般不用改它。

    Rootpath:在服务器上的路径。

    Username:服务器上的用户名

    Password:服务器上的密码

    再点击Mapping:

py

    Localpath:映射到服务器上对应位置的本机地址

    Deploypath:服务器上的文件夹位置。Rootpath+Deploypath就是服务器上我们文件所在的完整路径。

py

    配置完成后,点击Tools>BrowseRemoteHost,右侧出现我们服务器上的文件,就说明远程连接成功了!

py

    添加远程Python解释器

    接下来我们添加远程Python解释器,就能在本地「遥控」远程的服务器执行我们的Python程序了。点击Pycharm>Preference>Project>ProjectInterpreter>SSHInterpreter输入地址、用户名、密码三件套。

py

    Alright,试着在服务器上运行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包:

pip install -r requirements.txt

    接着测试一下框架是否能正常运行:

python3 run.py

py

    如果显示`Runningonhttp://127.0.0.1:5000表示框架运行正常。

    4.2安装Nginx、Gunicorn与Supervisor

    在服务器上运行:

apt install nginx

pip3 install gunicorn

pip3 install supervisor

    4.3修改nginx的配置文件

    nginx的配置文件在/etc/nginx/sites-available目录下,default文件。

server {

        listen 
80
;

        listen [::]:
80
;


        server_name example.com;


        root /home/git;

        index index.html;


        location / {

                try_files $uri $uri/ =
404
;

        }

}

    我们要做以下两件事:

    修改root为我们前端文件所在的目录。

    在location中添加一行expires-1;,以让页面能即时刷新。

    4.4配置supervisor

    在你喜欢的目录下生成supervisor.conf文件:

echo_supervisord_conf > supervisor.conf   
# 生成 supervisor 默认配置文件

    打开配置文件:

nano supervisor.conf

    在底部添加:

[program: [项目名称] ]

command=gunicorn -w4 -b0.
0.0
.
0
:
1234
 run:app                                          ; supervisor启动命令,文件叫run.py,run.py里面执行的类叫app。

directory=[项目目录]                                                ; 项目的文件夹路径

startsecs=
0
                                                                             ; 启动时间

stopwaitsecs=
0
                                                                          ; 终止等待时间

autostart=
false
                                                                         ; 是否自动启动

autorestart = 
true
   ; 程序异常退出后自动重启

startretries = 
3
     ; 启动失败自动重试次数,默认是 
3

stdout_logfile=[日志目录]/gunicorn.log

stderr_logfile=[日志目录]/gunicorn.err

    把上面的项目名称、项目目录、日志目录改成自己的即可。

    4.5修改run.py

    把run.py从本地运行改为服务器上运行。把app.run那行注释掉,添加以下代码:

if
 __name__ == 
'_main_'
:

    app.run(host=
"0.0.0.0"
,debug=
True
)

#无需填写端口,因为gunicorn中已经填了

    万事Okay。执行下面命令,你的后端服务器就运行起来啦!

supervisorctl -c supervisor.conf reload

supervisorctl -c supervisor.conf start all

    4.6supervisor的用法

supervisord -c supervisor.conf                             通过配置文件启动supervisor

supervisorctl -c supervisor.conf status                    察看supervisor的状态

supervisorctl -c supervisor.conf reload                    重新载入 配置文件

supervisorctl -c supervisor.conf start [all]|[appname]     启动指定/所有 supervisor管理的程序进程

supervisorctl -c supervisor.conf stop [all]|[appname]      关闭指定/所有 supervisor管理的程序进程

    4.7supervisor的小bug

    有时候,因为服务器重启等原因supervisor会出现一个error:

error: <class'socket.error'>, [Errno2] No such file or directory: file: /usr/lib/python2.7/socket.py line: 228
  

    这时候,运行以下两个命令:

sudo supervisord -c /etc/supervisor/supervisord.conf  

sudo supervisorctl -c /etc/supervisor/supervisord.conf  

    再执行:

supervisorctl -c supervisor.conf reload  

    就能解决。

    以上就是小编为大家整理的的“神级教程:Python环境搭建指南”一文,更多Python教程相关内容尽在开课吧广场Python教程频道!

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用。如涉及版权问题,请联系本站管理员予以更改或删除。
有用
分享
全部评论快来秀出你的观点
登录 后可发表观点…
发表
暂无评论,快来抢沙发!
零基础轻松入门Python