从php到python的第一天

一、前言

      身为一个phper,本来应该坚守阵线,为php的发展添砖加瓦,奈何最近项目需要修改之前的python文件,行吧,那咱们就来了解了解一直这么火的python到底该如何使用。

注: 本篇文章不是萌新入门的文章,是一名老phper初探python的文章,有一定基础的童鞋看起来会轻松很多,闲话不多说,咱们上干货。

二、工欲善其器

      大家都知道,想要学习一门语言之前,肯定是要找一款合适的编辑器的,其次要去官网下载地址,去扩展网站下载对应扩展等。

编辑器下载安装: https://www.runoob.com/w3cnote/pycharm-windows-install.html
语言下载安装: https://www.jb51.net/article/136324.htm
扩展下载地址: https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

      编辑器博主这里下载的是PyCharm,和之前用的phpstorm是同一家公司出的,功能比较强大。

三、版本选择以及共存问题

      众所周知,python2python3的版本差异巨大,按照目前的趋势来说,用python3的更多一些,python2正在被逐渐淘汰,比如博主的本地不知道在安装什么插件的时候,自动就给博主安装了一个python3.7,这代表python3.7才是现在的主流版本。不过考虑到一些老项目还是用的python2.7包括公司的项目也是用的python2.7,所以本地决定安装两个版本的py,到时候根据情况调整即可。

1、关于python2 和python 3共存的问题

参考:https://blog.csdn.net/weixin_30467087/article/details/98871582

注: 通过修改.exe文件的名称来区分不同的版本,想法和思路都很赞。

2、关于pip共存的问题

      按照上面的参考博客设置版本共存之后,使用普通的 pip install xx却一直报错,不能识别pip,果然是有坑,下载方式要指定对应的python版本
例如:

python2 -m pip install 【包名】
python3 -m pip install 【包名】     
参考:https://www.cnblogs.com/Elaine1/p/10184360.html

3、关键词科普

(1)pip是什么

      pipPython官方推荐的包管理工具,属于python的一部分。pip可执行文件在:C:\Python27\Scripts中,和linux系统的包管理工具差不多。

(2)python的-m参数

      意思是将库中的python模块用作脚本去运行,类似于import,是脚本的一种启动方式

	参考:https://www.cnblogs.com/maoguy/p/6670988.html

(3)python的-c参数

      在测试模块是否安装成功的时候,总会看到大佬们执行:python -c "import xxx"从语意上来看是解析双引号中的命令,直接执行的作用,从–help的英文翻译来看是:解析字符串命令一般通过这个命令直接引入模块,不报错就代表该模块可以正常运行

(4)其他常用参数

	参考:https://www.cnblogs.com/tekkaman/archive/2013/09/28/3344359.html

四、安装相关扩展

      博主从项目里随便找一个py文件,发现头部引入了不少扩展包,下面咱们也下载一些基础的扩展包,顺带了解下是怎么下载的。

1、py3.7安装MySQLdb

参考:https://blog.csdn.net/weixin_42840933/article/details/85274313

2、python2.7安装fllow

下载地址:https://pypi.org/project/follow/

      下载之后发现是个压缩文件,没办法通过pip安装,因此解压,然后把fllow.py复制到根目录,发现import fllow不再报错了。

3、py2.7安装MySQLdb

参考:

https://www.cnblogs.com/WXfresh/p/8674518.html   	(mysql-client)
https://www.jianshu.com/p/598fd8ecb8e9		(mysql-python)

      这块刚开始比较乱,网上的资料有安装mysql-python 的,也有安装mysql-client的,所以本地就都安装了一下,安装之后执行:

import MySQLdb
ImportError: this is MySQLdb version (1, 2, 5, 'final', 1), but _mysql is version (1, 4, 4, 'final', 0)

      这个错误是版本不一致造成的,也就是上面两个扩展不一致造成的,谷歌之后没找到同为1.2.5版本的myclient。后来看到mysql-client的官网介绍才发现mysql-python这个库是为了支持python2.7的,而mysql-client这个库貌似是最新版本,因此删除掉mysql-client,重新安装mysql-python试试:

 python2 -m pip uninstall mysqlclient  
 //没有直接使用pip命令是因为本地有两个py版本,pip也区分了一下
 python2 -m pip install .\MySQL_python-1.2.5-cp27-none-win_amd64.whl
然后测试引入:
import MySQLdb

      发现没有报错,证明引入成功。如果本地是py3.7的话,就安装mysql-client,如果本地py2.7的话,安装mysql-python即可。不过mysql-python支持的数据库版本上限是5.5,因此超出这个版本的,可能会有一些问题。

删除安装库命令:

 python2 -m pip uninstall mysqlclient
 python2 -m pip uninstall mysql-python

4、编辑器Pccharm中加载不出来咱们已经安装的扩展

      如果在编辑器Pccharm中加载不出来咱们已经安装的扩展,比如代码中import MySQLdb报错:

    import MySQLdb
ImportError: No module named MySQLdb

这个原因还是因为选择的python.exe的位置不对造成的。

参考:https://blog.csdn.net/Dongyingying518/article/details/90411182

      在原来的Interperter 右侧点击设置,add新的python.exe位置即可,添加完之后,选择新的Interperter,同时我们也能看到安装的扩展都一一出来了。

五、总结

      一路安装下来,发现pywindows下的安装还是挺麻烦的,而且没有类似于php的集成环境,所以安装稍微费劲点。不过据说pylinux上部署非常简单,这个有时间再试试,最起码关于py不再是只停留在传说中了,加油!

end

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章