一、python特点及简介\
python在编程语言中的排名
4位
简洁优雅
同scala语言
完成同样一个任务
c语言 1000行
java 100行
scala/python 20行
面向过程及面向对象的语言
同scala语言
wordcount
MapReduce
基于spark使用scala进行wordcount
sc.textFile(“hdfs://nn:8020/data/input/wc.txt”) // RDD
.flatMap(_.split(" ")) //Array[String] -Array[hadoop,hadooo,hive,spark,spark,hive, hadoop]
.map((_,1)) //Array[(String,Int)]
.reduceByKey((+)) //Array[(String,Int)] – Array[(hadoop,3),(hive,2),(spark,2)]
.savedAs(“hdfs://”)
.map(x=>x.split(" ")) //Array[Array[String] ]
hadoop hadooo hive spark
spark hive hadoop
有强大的基础代码库及种类用途繁多的第三方库
基础代码库覆盖了网络、文件、GUI、数据库等
第三方库
使用python开发一个邮件客户端:
从零开始 --2年
使用python的基础代码库及第三方库 – 2天
requests lxml
pip install requests lxml
requests.get(url)
跨平台可移植性
绝大多数的python程序不做任何改变就可以在各类主流平台运行
window linux mac
因为各个平台上有针对python代码的解释器
python是一种解释型语言 (shell同样)
编程语言一般 解释型语言 、编译型语言
c c++ 编译型语言:
代码会提前被编译成机器可以执行运行的机器语言-window .exe
代码一次编译以后可以多次直接执行(不需要再次进行编译),执行速度快,效率高
编译后的语言与特定平台有关,可移植性不高
python shell js解释型语言:
解释型语言不会提前被编译(翻译成机器可以直接执行的语言)
只有在执行这些代码时才会被翻译
并且执行一次就需要被翻译一次,执行速度慢,效率低
因为只要平台提供了相应的解释器,就可以直接运行代码,所以方便程序的移植
解释器的类型:
CPython解释器
官方默认,由c语言开发的
Jython解释器
在java平台上运行的解释器
java是混合型语言:
java程序在执行前也有一次编译的过程
变编译成字节码文件(机器不能直接运行的)
由JVM将字节码文件翻译成机器可以直接执行的语言
python的缺点:
运行速度慢
不能加密
是解释型语言的共同特点
发布程序或应用时必须将源码发布出去
python应用:
写脚本进行日常的运行或任务的管理
应用或小程序的开发
做网站开发
豆瓣 web
Google部分
爬虫
代码简洁
有很多针对爬虫的第三方库,为爬虫提供了一个良好的接口
抓取数据后的处理同样有很多的第三方库,处理比较方便快捷
spark的开发
python – 50%
scala
java
二、python的安装及使用
python 2.x 3.x 不兼容
python3.5.2 --上课使用
python3.5.0
兼容性问题:
python版本之间的