Python介绍:
Python是一门高级语言,它结合了解释性,编译性,互动性,和面相对象的脚本语言。
Python是一种解释型语言:这意味着开发过程中没有了编译这个环节
Pyhon是一种交互式语言:您可以在一个Python提示符下,直接互动执行你写的程序
Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理 到 WWW 浏览器再到游戏。
Python环境搭建:
Python可应用到多个平台,包括Liunx和Mac OS X。
您可以通过在终端执行命令Python查看是否安装Python以及查看Python版本。
您可以在Python官网下载https://www.python.org/downloads/
Python安装:
Linux平台下安装Python:
以下是在Linux/Unix平台上按装Python的简单步骤:
1. 打开WEB浏览器访问http://www.python.org/download/
2.选择自己需要的Python源码包。
3.下载解压源码包使用命令tar xzvf Python.xxx.tar.gz解压源码包或直接在终端执行一下命令:
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
4.执行./configure --prefix=/usr/local (--prefix为安装目录)
5.make
6.sudo make install
执行以上操作后,Python会被安装到/usr/local/bin目录下,Python库安装在/usr/local/lib/pythonxx, xx为Python版本号。
7.安装完成之后可以通过python自带的sys模块查看python的安装路径以及Pyhton库的位置,在终端下执行Python,进入Python解释器,输入命令如下:
>>>import sys
>>>sys.path
Windows平台下装Python:
以下为在windows平台下按住那个Python的简单步骤:
1.打开web浏览器访问:https://www.python.org/downloads/windows/
2.选择需要的安装的zip包。
3.下载后,双击下载的包,进入Python安装向导,安装非常简单,点击下一步就OK了。
环境变量的配置:
安装的程序或者执行文件可能会在其它的目录,但是这些目录又不在操作系统提供可以执行文件的搜索范围之内,所有就要配置环境变量,让系统可以找到程序的执行文件的命令。
Unix/windows 中路径变量为PATH
在Linux中设置环境变量:
在bash shell(Linux)中:
export PATH=$PATH:/usr/lccal/bin/python
在sh或者ksh中输入:
PATH="$PATH:/usr/local/bin/python"
注意:/usr/local/bin/python是Python的安装目录。
因为本人没有windows平台,所以就不说明windows平台下怎么设置环境变量了。
运行Python:
通过以上操作,您现在就可以通过终端输入Python进入Python并在交互式解释器中开始编写python代码了。
通常学习语言的时候,第一个脚本都是"Hello world",那么我们也来写一个"Hello world"的脚本
进入Python交互式解释器中写入一下内容:>>>print "Hello world"按回车,成功返回"Hello world"那么恭喜你 ,你的第一个Python脚本执行成功了。
Python的中文编码:
前面你已经成功输出了"Hello world",如果我们使用脚本输出中文的话,那么就会存在中文编码的问题,会报如下错误:
SyntaxError: Non-ASCII character,意思是说,你的脚本里面存在着不是ASCII码的内容,因为Linux默认为ASCII编码,默认一个ASCII码为1个字节(8个二进制位),一个中文汉字占用2个字节(16个二进制位),所以ASCII表示不了中文,因此出现了一个叫UTF-8的编码转换器,是一个针对Unicode的可变长度字符编码,又被称为万国码。UTF-8用1到6个字节编码unicode字符,所以可以显示中文,翻译以及其它语言。
解决方法为,只要在文件开头加上# -*- coding:utf-8 -*-就可以了,如下所示:
#!/usr/local/bin/env python
# -*-coding:utf-8-*-
print "你好,世界"
输出结果:
你好,世界
Python的执行过程:
1.每次运行要先转换为字节码,在由虚拟机把字节码转换为机器码(即二进制码),最后在由硬件(CPU)去运行。
2.由于不用关心编译问题,所以开发工作比较轻松。
Python的标示符:
什么是标示符:
编程时,用来表示变量与函数的变量名与函数名 。
1.第一个字符必须是字母或者下划线
2.剩下的字符可以是字母,数字或下划线
3.标示符是大小写敏感的
Python的保留字符:
使用python模块keyword可以查看Python的关键字,命令如下:
import keyword
keyword.kwlist
['and', 'as',..........]
Python的行和缩进:
Python的代码块不是使用({})来控制的,而是使用缩进的方法,缩进的空白数量不定,但是所有的代码块都必须包含相同的缩进数量,一般为4个空白,用法如下:
if True:
print "True"
else:
print "False"
Python的多行语句:
Totle = 'Hello\
world'
结果如下:
Helloworld
语句中包含(),[],{}的时候就不需要使用多行连接符了,如下:
Totle = {'name':'Tom', 'age':'25',
'Address':'xxxx'}
Python的引号:
Python引号分为(''),(""),(""")单引号,双引号与三引号,引号的开始和结尾必须相同。
其中使用三引号可以编写多行文本,常用的文档以及注释,当然我们比较常用的注释还是#符号,如下:
#!/usr/loca/bin/env python
#! -*-coding:utf-8 -*-
"""
这是一个注释
"""
print "Hello world" #这也是一个注释
print "你好,世界"
Python的空行:
空行并不是Python语法的一部分,书写时不插入空行,Pyhton解释器也不会抱错,但是空行的作用在于分隔两段不同功能和含义的代码,这样方便日后维护,如下:
#!/usr/local/bin/env python
raw_intpu("\n\nPlease Enter you name: ")
执行结果为:
#python tset.py
Please Enter you name:
Python同一行显示多条语句:
这个功能与shell是一样的,都是使用(;)号分割,如下:
import sys;sys.path
Python多个语句构成代码组:
缩进相同一组的语句构成一个代码块,我们称之为代码组,比如:
if expression:
print "Hello"
elif expression:
print "World"
else:
print "Sorry"
Python的变量类型:
变量类型:
Python的变量不需要声明,变量的赋值操作就是变量声明与定义的过程,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号(=)是来给变量赋值的。
#!/usr/local/bin/env python
# -*- coding:utf-8 -*-
number = 100 #赋值整型变量
number_1 100.0 #赋值浮点型变量
name = "Jom" #赋值字符串型变量
多个变量赋值:
a = b = c = d = 1
以上的列子为,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。
a,b,c = 1,2,"tom"
以上列子为,1,2赋值给了变量a与b,tom赋值给了c
Python的标准数据类型:
python有五个标准的数据类型:
1.Number (数字)
2.String(字符串)
3.List(列表)
4.Tuple(元组)
5.Dict(字典)
Python数字类型:
数字数据用来存储数值,他们是不可改变的数据类型,如果改变数字数据类型,那么就会分配一个新的对象。
python支持四种不同的数值类型:
1.int(整型)
2.long(长整型)
3.float(浮点型)
4.complex(复数)
Python字符串:
字符串是由数字,字母,下划线组成的一串字符。
python的字串列表有两种取值方式:
从左到右,索引从0开始
从右到左,索引从-1开始
如果要取一段子串,可以用到下标,如下:
#!/usr/local/bin/env python
# -*- coding:utf-8 -*-
str = "Hello world"
print str #输出完整字符串
print str[0] #输出字符串中第一个字符
print str[0:3] #输出第一个到第三个字符
print str * 2 #输出字符串两次
print str + "xk" #输出连接的字符串
以上实列输出为:
Hello world
H
Hel
Hello worldHello world
Hello worldxk
Python列表:
列表用[]标识,它支持数字,字符,字符串,甚至可以包含列表。
#!/usr/local/bin/env python
# -*- coding: utf-8 -*-
List = ['123', 'abc', '456', 'def']
table = ['name', 'age']
print list #输出完整的列表
print list[0] #输出列表中第一个元素
print list[0:3] #输出列表中第一个到第三个元素
print list * 2 #输出列表二次
print list + table #打印组合的列表
以上实例输出结果为:
['123', 'abc', '456', 'def']
123
['123', 'abc', '456']
['123', 'abc', '456', 'def', '123', 'abc', '456', 'def']
['123', 'abc', '456', 'def', 'name', 'age']
Python元组:
元组是另一种数据类型,类似于列表。
元组用()标识,内部元素使用逗号隔开,元组是不可改变的。
#!/usr/local/bin/env python
# -*- coding: utf-8 -*-
tuple = (123, 'abc', 456, 'def')
table = ('name', 'age')
print tuple #输出完整元组
print tuple[0] #输出元组中第一个元素
print tuple[0:3] #输出元组中第一个到第三个元素
print tuple * 2 #输出元组两次
print tuple + table #输出组合元组
以下元组是无效的,因为元组不能改变;
tuple = (123, 'abc', 456, 'def'
tuple[2] = 1000
tuple[1] = 'mmmm'
Python字典:
字典用{}来标识,字典是无序的对象集合,而列表是有序的对象集合。字典由索引(key)和它对应的值value组成。
#!/usr/local/bin/env python
# -*- coding: utf-8 -*-
dict = {}
dict['one'] = "this is on"
dict ['two'] = "this is two"
Dictionaries = {'name':'tom' , 'age':22, 'greder':'man'}
print dict['one'] #输出键为one的值
print dict[‘two'] #输出键为two的值
print Dictionarles #输出完整的字典
print Dictionarles.keys #输出所有的键
pring Dictionarles.values #输出所有的值
Python运算符:
算数运算符
赋值运算符
比较运算符
逻辑运算符
成员运算符
身份运算符
运算符优先级
位运算符
Python逻辑运算符:
and :与
or : 或
not : 非
#!/usr/loca/bin/env python
#! -*-coding: utf-8 -*-
a = 10
b = 20
c = 5
if a < b and b > c:
print "Hello,world"
else:
print "Quit"
if a < b or b < c:
print "Hello world"
else:
print "Quit"
if not a > b:
print "Hello world"
else:
print "Quit"
以上得到的结果全部都是"Hello world":
Python成员运算符:
in如果在指定序列中找到制定的元素返回True,否则返回False
not in如果在指定序列中没有找到返回True,否则返回False
a = 10
b = 20
list = [1, 2, 3, 4, 5, 6]
if [ a in list]:
print "List 1 - a is available in the given list"
else:
print "List 1 - a is not available in the given list"
Python身份运算符:
a = 10
b = 20
a is b #输出结果为 False
a is not b #输出结果为True
Python的条件语句:
Python的条件语句是通过一条或多条语句的执行结果,来决定执行的代码块。
Python编程中if语句用于控制程序的执行,形式如下:
if 判断条件:
执行语句...
else:
执行语句...
条件判断语句可以是多行,只要以缩进表示同意范围就可以:
name = "Tom"
age = 24
if name == "Python":
age == 18
print "welcome boss"
else:
pring name
以上输出结果为:Tom
当判断条件为多个值的时候,可以使用一下的方法:
number = 5
if number == 10:
print "Boss"
elif number <= 20:
print "user"
elif number > 30:
pring "age"
else:
print "YES"
Python的循环语句:
Python提供了for循环与while循环:
while循环:在指定的判断条件为True时执行循环体,否则则推出。
for循环:重复循环语句
嵌套循环:可以在while循环体里面嵌套for循环
循环控制语句:
break语句:在语句执行过程中终止循环,并且跳出整个循环
continue语句:在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环
pass语句:pass是空语句,是为了保持程序结构的完整性
Python中while的基本形式为:
while 判断条件:
执行语句...
#!/usr/loca/bin python
#! -*- coding: utf-8 -*-
number = 0
while number < 9:
print "The bumber is %s" % number
number = number +1
print "Good bye!!!"
while循环还有2个命令,break,continue,实例如下:
a = 1
while 1:
print a
a = a + 1
if a > 10:
break
while a < 10:
a = a + 1
if a%2 > 0:
continue
print a
无限循环:
var = 1
while var == 1:
name = raw_input("Please enter you name: ")
print name
print "Good bye!!!"
Python for循环:
Python for循环可以遍历任何序列项目,比如一个列表,一个字符串。
for i in "python"
print i
for i in ['python', 'Linux', 'Jave']
print i
以上输出结果为:
p
y
t
h
o
n
-----------------------------------------
python
Linux
Java
通过序列索引迭代:
list = ['banana', 'apple', 'mango']
for i in range(len(list)):
print"当前水果:", list[i]
print "Good bye"
Python使用else语句:
for num in range(10,20):
for i in range(2,num):
if num%i == 0:
j = num/i
print "%d 等于 %d * %d" % (num, i, j)
break
else:
print num, "是素数"
Python break语句:
for i in "Python":
i == 'h':
break
print "Current letter :", i
var = 10
while var > 10:
print "Current variable values :", var
var = var - 1
if var == 5:
break
print "Good bye"
Python Pass语句:
Python pass语句是空语句,是为了保持程序结构的完整性
for i in "Python":
if i == 'o':
pass
print "这是pass块"
print "当前字母:", i
print "Good bye"