Python:Python语言的简介(语言特点/pyc介绍/Python版本语言兼容问题(python2 VS Python3))安装学习路线(数据分析/机器学习/网页爬等编程案例分析)之详细攻略
Posted 一个处女座的程序猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python:Python语言的简介(语言特点/pyc介绍/Python版本语言兼容问题(python2 VS Python3))安装学习路线(数据分析/机器学习/网页爬等编程案例分析)之详细攻略相关的知识,希望对你有一定的参考价值。
Python:Python语言的简介(语言特点/pyc介绍/Python版本语言兼容问题(python2 VS Python3))、安装、学习路线(数据分析/机器学习/网页爬等编程案例分析)之详细攻略
目录
3、Python版本语言兼容问题(python2 VS Python3)
(1)、Python 3 与 Python 2 有很大的区别
T1、安装IDLE(Python官网下载时自带的IDLE)软件编程
T2、利用MyEclipse软件的PyDev插件实现Python编程
1、Python编程语言学习:python语言中快速查询python自带模块&函数的用法及其属性方法、如何查询某个函数&关键词的用法、输出一个类或者实例化对象的所有属性和方法名之详细攻略
Computer:字符编码(ASCII编码/GBK编码/BASE64编码/UTF-8编码)的简介、案例应用(python中的编码格式及常见编码问题详解)之详细攻略
Python语言学习:Python语言学习之python包/库package的简介(模块的封装/模块路径搜索/模块导入方法/案例应用)、使用方法、管理工具之详细攻略
Python语言学习:Python语言学习之数据类型/变量/字符串/操作符/转义符的简介、案例应用之详细攻略
Python语言学习:Python语言学习之列表/元祖/字典/集合的简介、案例应用之详细攻略
Python语言学习:Python语言学习之函数(定义&调用函数/常用内置函数如filter&map/内嵌函数/闭包/匿名函数如lambda&map)的简介、案例应用之详细攻略
Python语言学习:Python语言学习之逻辑控制语句(if语句&for语句&while语句&range语句&with语句)的简介、案例应用之详细攻略
Python语言学习:Python语言学习之迭代/递归/OS输入输出/错误&异常处理的简介、案例应用之详细攻略
Python语言学习:Python语言学习之面向对象编程OO(继承&封装&多态)/类&方法/装饰器的简介、案例应用之详细攻略
Python语言学习:Python语言学习之文件读取&写入/操作系统(OS模块详解)的简介、案例应用之详细攻略
Python语言学习:Python语言学习之容器(列表&元组&字典&集合)简介、特点/意义/经验总结及容器魔法方法(定义可变&不可变容器的协议)的简介、案例应用之详细攻
Python语言学习:Python语言学习之硬件交互应用(arduino、树莓派等)相关的简介、案例应用之详细攻略
Python语言学习:Python语言学习之程序打包发布(exe/msi等)&如何将自己的Python项目(自定义程序代码库)发布到PyPI全流程的简介、案例应用之详细攻略
Python语言学习:Python语言学习之编程语言基础案例综合应用集合(输入带*号的密码/与用户交/根据分数判断优良差/提取txt文档中两人对话内容等)之详细攻略
Python语言学习:Python语言学习之正则表达式相关(re正则表达式库)的简介、常用函数、案例应用之详细攻略
Python语言学习:Python语言学习之GUI图形用户界面编程(tkinter/wxPython/PyGTK/PySide/Kivy/easygui/PyQt等)的简介、案例应用之详细攻略
AI:Python与人工智能相关的库/框架(机器学习&深度学习&数据科学/计算机视觉/自然语言处理)的简介、案例应用之详细攻略
Python语言学习:Python语言学习之网络爬虫/反爬虫技术相关的简介、案例应用之详细攻略
python之crawler:基于气象局所有城市代码数据爬天气官网数据利用pickle和urllib库实现交互输入城市获取天气预报详情案例代码实现
Python语言的简介
Python,可以学到面向对象的编程思维,运用模块进行编程,是一种面向对象的解释型计算机程序设计语言。由荷兰人Guido van Rossum(感恩节时无聊而发明的)于1989年发明,第一个公开发行版发行于1991年。Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Google、Yahoo!、Facebook、NASA、Quora(中国知乎)、豆瓣、知乎、百度、腾讯、汽车之家、美团等。
1、Python的应用领域
互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、网络爬虫、Web 等。主流的应用如下所示:
科学计算、数值计算:
图像处理:
机器学习:
数据分析:
网络爬虫:
网络服务、网页开发:
可视化界面GUI开发:
2、Python语言特点、对比其它语言
2.1、Python语言特点
(1)、Python对大小写敏感;
(2)、Python默认每行本身作为语法的结束,故每行需要顶格(不能缩进)写代码,不像Java和其他语言,需要分号作为结束。
(3)、Python不像C、C++、Java等不需要提前声明变量类型,这点类似Matlab语言。不需变量声明,直接赋值,只有赋值后才可使用;变量名不能为Python内置的关键字。
(4)、python虽然运算的慢,但是开发效率高,一行python可能替代100行C++或、Java代码。
2.2、Python语言对比其它语言
数据分析相关的语言 | 做数据分析、科学计算等离不开工具、语言的使用,目前最流行的数据语言,无非是MATLAB,R语言,Python这三种语言。 python可以调用matlab库。当然matlab也能调用python库。 对于科学运算来说,python语言本身包含的包并不能匹敌matlab,但是当python搭配numpy, scipy, matplotlib等等第三方包的时候,从编程的角度来说与matlab没有什么区别。更重要的是,现在python可以使用的第三方包越来越多了,几乎无所不包。这使得python几乎可以应付任何任务,比如web开发、爬虫、深度学习等等。相对而言,matlab则局限于仅仅完成科学计算任务。 |
Matlab | Python相对于Matlab最大的优势免费。 python易学、易读、易维护,处理速度也比R语言要快,无需把数据库切割; python势头猛,众多大公司需要,市场前景广阔;而MATLAB语言比较局限,专注于工程和科学计算方面,而且MATLAB价格贵,免费版或盗版都只能玩玩学习用; python具有丰富的扩展库,这个是其他两个不能比的;长期来看,Python的科学计算生态会比Matlab好。 |
C/C++/Java | Python这门语言是由C开发而来。 Python/Ruby能让你用少的多的多的代码写出相同的程序。有人计算过,Python或Ruby写出的程序的代码行数只相当于相对应的Java代码的行数的五分之一。如果没有绝对的必要,为什么要花这么多时间写出这么多的代码呢?而且,有人说,一个优秀的程序员能维护的代码量最多是2万行。这不区分用的语言究竟是汇编,C还是Python/Ruby/php/Lisp。所以,如果你用Python/Ruby写,你一个人干的,不管是干什么,如果换用Java/C/C++,那都需要一个5人的小团队来干。 |
VB/PHP | 跟PHP/VB相比,Python/Ruby的是一种从设计上讲比它们好的不知多少倍的语言。PHP和VB分别是在开发网站和桌面应用程序上非常流行的语言。它们流行的原因是非常的易学。不懂计算机的人也很容易的上手。如果你用这些语言开发过大型的项目,你就会发现这些语言的设计是如此的糟糕。是朋友,他就不会劝你使用PHP/VB。 |
Lisp/Scala/ Haskell /Closure/Erlang | Python/Ruby跟它们比起来显得相当的“主流”。确实,这些语言每种都有其很酷的特征,对于高级编程人员,了解这些语言能给他们对编程的思考带来实际的提升。但这些应该在你以后的职业生涯中才去决定学哪一两种。对于现在,Python/Ruby是在语言功能和实际运用之间平衡后的更好的选择。 |
Perl | Python和Ruby都受恩于Perl,在这两种语言异军突起前,Perl是最好、最大的一种动态语言。但现在,Perl已是明日黄花,越来越多的人转向Ruby/Python。我感觉Perl的面向对象机制有点做作,很不好用。通常认为,Perl一种比较难学的语言,因为它提供你了太多不同的方法去完成同一个任务,它的语法有点像密码,非常不直观 — 除非你对它掌握的非常好。总之,我感觉Perl是一种对于学生来说不是很合适的语言—除非你有特殊的理由去学它(例如,你有很多正则表达式要处理,这是Perl的闪光点)。 |
sh/sed/awk/bash | 如果你使用Linux/Unix,你可能需要做一些shell编程,甚至会编写一些不小的程序。但是,对于这些语言,一旦程序达到一定的行数,事情就会开始变得让你痛苦不堪,你最好是用Python去做这些事情。当然,做这种事情,Perl是最好的选择,Python排第二。(Ruby对于系统shell脚本不是很合适)。 |
3、Python版本语言兼容问题(python2 VS Python3)
(1)、Python 3 与 Python 2 有很大的区别
1)、python编程需要格外注意python2和python3,因为python3并不兼容ython2。
2)、Python 3默认使用的就是utf-8编码。所以,对于使用的是Python 3 的情况,就不需要sys.setdefaultencoding("utf-8")这段代码, 最重要的是,Python 3 的 sys 库里面已经没有 setdefaultencoding() 函数了。
(2)、Python 2用法VS Python 3用法
Python2 | Python3 |
print clf | print (clf) 输出要加() |
import cPickle | import pickle python2有cPickle,但是在python3下,是没有cPickle的; 解决办法:将cPickle改为pickle即可 |
a=[2,.0] print (clf.predict(a)) | a=[2,.0] print (clf.predict([a])) 对与数组等要加[] |
clf = GridSearchCV(SVC(kernel='rbf', class_weight='auto'), param_grid) | clf = GridSearchCV(SVC(kernel='rbf', class_weight='balanced'), param_grid) #auto改为balanced #建立分类器模型,GridSearchCV函数(图像处理即选择rbf作为核函数,权重自自动的,上行定义好的格子似的矩阵) |
xPredict = [90,2,0,0,1] print ("predict:") | xPredict = [[90,2,0,0,1]] print ("predict:") |
import sys import importlib importlib.reload(sys) |
4、pyc等文件简介
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。
Python语言IDE的安装
Python Interpreter编译器:是Python的编译器,核心模块,是将所有Python代码的语言转为系统理解的程序,然后执行。
1、Windows系统下安装Python的IDE
T1、安装IDLE(Python官网下载时自带的IDLE)软件编程
定要勾选Add Python 3.6 to PATH,系统会自动帮我们设置电脑环境变量。安装Python时,会自动带有Python自带的IDE即IDLE(IDLE是一个python shell,但是该IDLE的工作界面比较简单)。
(1)、Python Shell类似Matlab的命令窗口(Shellku框内会输出结果),新建的编辑器类似Matlab的脚本窗口。
(2)、help(input) # 利用Python内部帮助文档了解该关键词。
上边菜单栏 | ||
File | New File:新建一个File,即编辑(不同于shell内), Save: | |
Edit | Undo、Redo: | |
Cut、Copy、Paste: | ||
Find、Find Again: Replace: 设置编码:切记要打开不同的文件设置相同的编码,主文件和需要调用的文件都为utf8或GBK的模式, | ||
Shell | ||
Debug | Go to File/Line | |
DebuggerStack Viewer | ||
Format | lndent Region Ctrl+] Dedent Region Ctrl+[ | |
Comment Out Region Alt+3 | ||
Toggle Tabs Alt+T | ||
Format ParagraphAlt+Q | ||
Run | Python Shell: Check Module模块: Run Module F5:点击即可运行程序 | |
Options | Configure IDLE: Code Context: |
T2、利用MyEclipse软件的PyDev插件实现Python编程
PyDev是Eclips的插件,用户可以完全利用 Eclipse 来进行 Python 应用程序的开发和调试。这个能够将 Eclipse当作 Python IDE 的项目就是 PyDev。
前提必须已安装IDLE(Python)软件,即上一个步骤,
第一步,下载MyEclipse软件。
第二步,下载PyDev插件,利用MyEclipse软件内置下载器,输入下载PyDev插件的网址,如右图,一步步安装即可完成。
第三步,将Python编辑器配置到MyEclipse软件的PyDev插件中,在首选项内找到PyDev添加已经安装好了的Python编辑器即可。
第四步,新建Python软件,New> Others,选择PyDev>PyDev Project,然后新建*.py文件即可,
T3、在Windows系统的dos内执行python代码
需要先将下载后的Python Interpreter编译器配置(告诉)给Win系统,即在Win系统环境变量中加入Python Interpreter编译器的路径位置,然后在dos内编写Python代码前,先进入Python环境,即输入python,然后继续输入Python代码。
2、Linux系统下自带Python的IDE
一般Linux系统无需安装python,原装Python环境,比如ubuntu14.04LTS版本自带python。
(1)、从IDLE启动Python
IDLE是一个Python Shell类似Windows的cmd窗口,shell的意思是外壳,即通过键入文本与与程序交互的途径
3、python下载各种库的方法
T1、利用pip的方法
Python之pip:Python语言中的pip的简介、安装、使用方法之详细攻略_一个处女座的程序猿的博客-CSDN博客
pip install pyaudio
T2、利用conda的方法
ML之Anaconda:在Anaconda中的常用的conda命令集合(分门别类+非常细化)
conda install pyaudio
4、python与GPU和CUDA
要用GPU图形处理器运算(因为CPU太慢无法达到深度学习的要求),所编写出的程序于是就可以在支持CUDA™的处理器上以超高性能运行。CUDA是显卡厂商NVIDIA推出的运算平台。CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
Python语言的系统命令
1、Python编程语言学习:python语言中快速查询python自带模块&函数的用法及其属性方法、如何查询某个函数&关键词的用法、输出一个类或者实例化对象的所有属性和方法名之详细攻略
2、Python常使用的各种符号
# 单行注释:# 单行注释
""" 多行注释:
"""
多行内容,
被注释内容
"""
换行符\\n、字符串是%s、整数%d、浮点数%f