python入门(持续更新)

最近实现一个自动化监控和发送报表功能,问了下背后的DBA大师,用python写个脚本来实现把,然后开始学python,网上很多只是并没有一个结构性的讲解,这里分享一些心得和记录一些笔记。

帕森,一个比较流行的编程语言,收集了下和c/java等比较的优缺点,python 执行效率低,优点是语法简单。为什么说执行效率低?拿c比较,c是直接编译机器语言,执行一条c可能只需要花0.001秒时间,而python执行,需要通过c去编译成为机器语言,中间多了一步,所以执行一条python可能要0.1秒,差了100倍为什么还要用python呢?因为对于现在的网络资源,客户的网速往往会延迟1秒以上,所以对于python的0.1秒还达不到影响体验的程度,现在硬件性能也非常强大,完全可以去支撑python的消耗,基于python开发速度快,入门简单的特点,成为了一个很热门的语言。

接下来讲讲python环境搭建;

python想运行,就想MySQL要运行一样要安装个mysql,我们开发python就要安装python开发环境,百度一下直接去官网下载python就行了,现在主要是2.7版本和3.3版本,由于现在很多服务器都升级得比较慢,很多用的都是2.7版本,所以我们也安装2.7版,注意2.7和3.3上有些语法不兼容,所以没有选择3.3,2.7版本也有很多,随便下就行了,我选择的是2.7.15,64位的。

安装完后,win10菜单栏就可以看见ide了,如下图:

打开ide,就可以进行python开发了,是不是很简单,接下来我们进行一个最简单的输出开发:

输入print数据,回车,返回输入值

这就是最简单的一个开发,然而我们却只实现了最简单的功能,

python有很多模块,帮助开发进行快速配置的,比如我要链接mysql数据库,接口模块python已经有了,只需要启动这个模块,然后在模块中输入地址用户密码等就可以链接了,不需要自己去开发一套链接方法,但是新手最难的偏偏也是模块,因为模块的安装经常会各种报错

本次我以安装链接MySQL数据库为例子:

安装完python基本ide是不能链接上mysql 的,需要mysqlbd模块支撑,MySQLdb格式又是whe格式文件包,所以又要wheel模块去安装这个文件包,而wheel模块一般没有自带,我们有要用pip进行安装wheel模块,所以又要一个pip模块,而安装pip模块又要 python setup.py install去安装pip  

瞬间是不是觉得好复杂,好难受,好在安装py文件不再需要一个独立模块进行安装了,所以我们来整理一下:

先通过install 安装 pip,通过pip 安装wheel,下载mysqldb whe文件通过wheel安装mysqldb,之后就能调用mysqldb的方法链接数据库了;

怎么安装pip?下载好pip文件后发现不是exe不能执行,不要方,把文件拖到桌面,shift+鼠标右键桌面,弹出在此窗口打开dos;(如果没有,应该是默认配置关闭了,百度下怎么调出来就行了)

打开shell窗口,输入python setup.py install(前提是确保你的桌面有了这个安装文件哦,所以要拷贝到桌面)

然后cmd会反馈你安装成功,接下来在cmd中输入pip

弹出如上图情况,代表你pip安装成功了,记得把路径配置环境变量,包括之前python的ide环境变量一起配置了;

接下来就可以使用pip安装了

命令:

pip install wheel

会自动安装wheel,你甚至可以pip install mysqldb;有时候会报错没有VC的开发环境,报错中会有链接,直接下载安装开发环境就好了

比如我pip安装了pymysql

安装完各个模块后,我们就可以去开发了,最好的开发工具是在eclipse中,就像mysql我喜欢用navicat一样,eclipse是来开发Java的,但是有个pydev插件,开发python炒鸡好用,所以下载eclipse配置安装pydev,

以上就是安装好eclipse和插件pydev后新建的一个py开发环境

如果想检测有没有哪个模块,我们只需要import +模块名就知道了,如果没有就会反馈报错

这就是没有这个模块的报错;

安装完各个模块后,我们来测试链接数据库:

以上就是通过py链接mysql数据库,前面#注释的,请大家记住每个脚本都要打一下最好,意思是:

#本脚本是python脚本

#本脚本用的字符是utf-8

请记得一定要打,因为你打了的话,不管什么环境,Linux还是windows 什么的,都会认识你这个脚本然后按照你的要求解析脚本;

后面的import 关键字,调用模块;只要启动一个模块功能,请在脚本前先import 调用模块;

然后就是命名了db变量,通过mysqldb模块的connect方法连上数据库;

建立一个游标,然后执行游标;

返回结果关键字fetchall得到数据库返回的结果并赋值给变量

输出变量就输出了查询结果,关闭通道;

此次到此我主要想吐槽的是,模块的安装,请务必找到相关联系,否则会安装不上模块无法使用。

-------------------------------- -------------------------------------------------------------------------------------------------------------------------------

2018.8.6更新:

最近写python经常遇到各种报错,今天写下一些常见报错的尝试方法:

IndentationError:expected an indented block

这个报错:翻译为缩进格式错误。

python这个语言是严格要求缩进的,也就是说严格要求空格的使用,当空格多一个少一个或者上下两行代码对齐方式不一致,都会产生这个报错;

快速处理方法,把所有的缩进全部删除后,run一下,如果还在报错,那么就是说你的对齐格式不一致,如果用eclipse开发,直接把这行回退到上一行代码回车,eclipse会进行自动对齐,就不会报错了:

猜你喜欢

转载自blog.csdn.net/qq_21108311/article/details/81352487