二、Python课程【初级篇】
2015-10-10 12:10
567 查看
(一)初识
1.Python三大优点:简单、功能强大、支持面向对象
2.Python的一些特点:
·大小严格区分
·简单、易学、支持面向对象
·开源
·库非常丰富
·标准库:正则表达式标准库
·非标准库:wxpython库
·跨平台使用
·解释性语言(解释器—字符码:直接运行)
·高级语言
(二)语法基础
1.常量与变量
(1)常量:一旦绑定,就不能更改
(2)
上面是定义常量,需将上面内容以const作为文件名保存在python27的lib目录下
ConstError: Can’t rebinf const(value)
(3)变量
2.数与字符串
(1)数的类型(5种)
·int
·long 888888l
·float
·bool 只有True、False
·complex
(2)什么是字符串
·如:’hello’、”my python”、”2+3”
(3)引号的使用与区别
·单引号
·双引号
·三引号(换行、保持原格式)
(4)转义字符
(5)自然字符串(r””:是保持转义字符)
输出:Hell\no
(6)字符串的重复
(7)子字符串
·索引运算符从0开始索引
·切片运算符[a:b]是指从第a下标开始到第b-1下标(首位为0)
C = “jikexueyuan”
C1 = c[0]
C2 = c[1:3]
【例子】:
【结果】
3.数据类型(Python中没有数组的概念)
(1)基本数据类型
·数
·字符串
(2)列表(列表中的元素是有序的)
(3)元组
区分列表和元组:
①列表里面买的元素的值可以修改,元组里面元素的值不能修改,只能读取
②列表:[], 元组:()
③a = [“”,””],b ={“”,””}
例子:
(4)集合
①两个功能:建立关系、消除重复元素
②格式:set(元素)
·交集(a&b)
·并集(a|b)
·差集(a-b)
·去除重复的元素(set(a))
例子:
(5)字典(也叫关联数组)
·格式:zidian={‘name’:’weiwei’,’home’:’guilin’}
·输出某一项:print k[“name”],也可以通过这种方法添加字典里面的项目
例子:
4.标识符
(1)什么是标识符(变量与常量的名称)
(2)标识符命名原则
·首字符:字母或下划线
·字母、下划线、数字
(3)关键字(保留字:28种)
And、elif、global、or、else、pass、break、continue、import、class、return、for、while
5.对象
·对象
·pickle腌制
6.行与缩进
(1)了解逻辑行与物理行
·意义上的行数
·实际看到的行数
例子:
(4)什么是缩进(2种:tab格、空格)
(5)如何缩进(while、for)
(6)注释(#)
(三)运算符(优先级)及表达式
1.运算符
·+:字符串连接
·not\and\or
2.优先级
3.表达式
①值、变量和运算符组成的整体
②
③表达式执行结果和print执行结果的差别(如上)
(四)控制流
1.Python的三种控制流
for语句的格式:
for i in 集合:
执行该部分
else:
执行该部分
a = range(0,5)
print a
”’步长:2”’
b = range(0,10,2)
print b
Break语句:
”’
break语句是强制停止循环的意思
”’
”’
continue:只是结束本次循环,然后继续进入下一个循环
break:直接结束整个循环
”’
区别:
结果:
1
3
1
(五)Python函数
1.函数(function)
①系统自带
②自定义
2.形参与实参
输出:
3.全局变量与局部变量
差别在于:作用域
①局部变量
结果:
②全局变量
结果:
试想:
输出:
4.函数使用与返回值
输出:
5.文档字符串
作用:用于查看所对应文档的功能
(下面是某个文档)
那怎么知道该文档的功能呢?
①
输出:
②
(六)函数进阶–模块
1.函数是一段程序,模块是一个程序块
”’
2.字节编译
(七)Python数据结构
1.数据结构
2.棧
3.队列
(八)面向对象
(九)文件与Python异常处理
(十)标准库与Python其他使用
1.Python三大优点:简单、功能强大、支持面向对象
2.Python的一些特点:
·大小严格区分
·简单、易学、支持面向对象
·开源
·库非常丰富
·标准库:正则表达式标准库
·非标准库:wxpython库
·跨平台使用
·解释性语言(解释器—字符码:直接运行)
·高级语言
(二)语法基础
1.常量与变量
(1)常量:一旦绑定,就不能更改
(2)
class _const(object): class ConstError(TypeError):pass def __setattr__(self, name, value): if self.__dict__.has_key(name): raise self.ConstError, "Can't rebinf const(%s)" % name self.__dict__[name] = value def __delattr__(self, name): if name in self.__dict__: raise self.ConstError, "Can't unbind const(%s)" % name raise NameError, name import sys sys.modules[__name__] = _const()
上面是定义常量,需将上面内容以const作为文件名保存在python27的lib目录下
import const const.value = 10 const.value =100(对常量赋值,导致下面的error) print const.value
ConstError: Can’t rebinf const(value)
(3)变量
2.数与字符串
(1)数的类型(5种)
·int
·long 888888l
·float
·bool 只有True、False
·complex
(2)什么是字符串
·如:’hello’、”my python”、”2+3”
(3)引号的使用与区别
·单引号
a = ‘It\’s’ b = “It’s”
·双引号
·三引号(换行、保持原格式)
c = ’’’H Ell O’’’
(4)转义字符
(5)自然字符串(r””:是保持转义字符)
print r”Hell\no”
输出:Hell\no
(6)字符串的重复
Print “Hello”*20
(7)子字符串
·索引运算符从0开始索引
·切片运算符[a:b]是指从第a下标开始到第b-1下标(首位为0)
C = “jikexueyuan”
C1 = c[0]
C2 = c[1:3]
【例子】:
#coding=utf-8 #单引号 print 'It\'s a smart dress' #双引号 print "It's a smart dress" #三引号 print ''' I t's a pen ''' #转义字符 print "\nI\nam\n" #自然字符串 print r"I\n" #字符串的重复 print '\nI can tell'*10 #子字符串 a = "I' can do it well" b = a[0] c = a[:2] d = a[2:] print b,c,d
【结果】
It's a smart dress It's a smart dress I t's a pen I am I\n I can tell I can tell I can tell I can tell I can tell I can tell I can tell I can tell I can tell I can tell I I' can do it well
3.数据类型(Python中没有数组的概念)
(1)基本数据类型
·数
·字符串
(2)列表(列表中的元素是有序的)
(3)元组
区分列表和元组:
①列表里面买的元素的值可以修改,元组里面元素的值不能修改,只能读取
②列表:[], 元组:()
③a = [“”,””],b ={“”,””}
例子:
#coding=utf-8(IDE下默认为#_*_coding:cp936_*_,添加这一行会导致乱码) a=["林林","标标"] print a[0] b=("小小","鱼鱼") a[0]="小小" print a[0],b[1] 结果:>>> 鏋楁灄 灏忓皬 楸奸奔 a=["林林","标标"] print a[0] b=("小小","鱼鱼") a[0]="小小" print a[0],b[1] 结果: 林林 小小 鱼鱼
(4)集合
①两个功能:建立关系、消除重复元素
②格式:set(元素)
·交集(a&b)
·并集(a|b)
·差集(a-b)
·去除重复的元素(set(a))
例子:
a = set("aaaabbbcdmnop") b = set("abcd") c = a&b d = a|b e = a-b f = set(a) print c,d,e,f
(5)字典(也叫关联数组)
·格式:zidian={‘name’:’weiwei’,’home’:’guilin’}
·输出某一项:print k[“name”],也可以通过这种方法添加字典里面的项目
例子:
z={"name":"戴安娜","home":"上海"} print z["name"] z["interest"]="音乐" print z["interest"]
4.标识符
(1)什么是标识符(变量与常量的名称)
(2)标识符命名原则
·首字符:字母或下划线
·字母、下划线、数字
(3)关键字(保留字:28种)
And、elif、global、or、else、pass、break、continue、import、class、return、for、while
5.对象
·对象
·pickle腌制
#pickle腌制 import pickle #dumps(onject)将对象序列化 #loads(string)将对象原样恢复,并且对象类型也恢复为原来的格式 #dump(object,file)将对象存储到文件里面序列化 #load(object,file)将存储在文件里面的数据恢复 lista=["mingyue","yueliang"] listb=pickle.dumps(lista) print listb listc = pickle.loads(listb) print listc group1=("wanmei","rensheng") f1=file('pickle.py','wb') pickle.dump(group1,f1,True) f1.close() f2 = file('pickle.py','rb') t = pickle.load(f2) print t f2.close()
6.行与缩进
(1)了解逻辑行与物理行
·意义上的行数
·实际看到的行数
例子:
#以下是2个物理行 print "abc" print "123" #以下是1个物理行,2个逻辑行 print "abc";print"123" #以下是1个逻辑行,2个物理行 print ''' 12345''' (2)行中分号的使用 (3)行连接 #行连接 print "学习\ python"
(4)什么是缩进(2种:tab格、空格)
(5)如何缩进(while、for)
(6)注释(#)
(三)运算符(优先级)及表达式
1.运算符
·+:字符串连接
·not\and\or
2.优先级
3.表达式
①值、变量和运算符组成的整体
②
1.运算符 ·+:字符串连接 ·not\and\or 2.优先级 3.表达式 ①值、变量和运算符组成的整体 ②>>> a = 7 >>> "My" 'My' >>> a = 'OK' >>> a 'OK' >>> a = "OK" >>> a 'OK' >>> print 'OK' OK >>> print "OK" OK >>>
③表达式执行结果和print执行结果的差别(如上)
(四)控制流
1.Python的三种控制流
'''Python有三种控制流类型:顺序结构、分支结构、循环结构''' #重复执行一遍程序(法一) i = 0 print i i += 1 print i i = 0 print i i += 1 print i #循环控制流(法二) for k in range(0,5): i = 0 print i i += 1 print i a = 1 while a: print "Hello" a -= 1 #控制流的分支结构 xiaoming = "hungry" if xiaoming == "full": print "宝宝好乖" else: print "宝宝好皮" 分支结构-if语句 ''' if语句用判断选择执行的语句块 ''' a = 1 if a ==1: print "hello" a = 0 if a ==0: print "Man" else: print "Woman" score = 100 if score >= 90: print "优秀" elif score >= 60: print "合格" else: print "还得努力" ''' while语句:用来控制一段语句重复执行 ''' #死循环:(占用CPU) a = True while a: print "ABC" #while语句嵌套使用 a = 0 while a<2: if a<=1: print a ''' 1.range函数的使用 2.带嵌套的for语句 '''```
for语句的格式:
for i in 集合:
执行该部分
else:
执行该部分
for i in [1,3,5,6]: print i for i in range(1,5): print i for i in range(0,3): if i%2==0: print i else: print "奇数"
a = range(0,5)
print a
”’步长:2”’
b = range(0,10,2)
print b
Break语句:
”’
break语句是强制停止循环的意思
”’
#break语句在while循环中 a =1 while a: print a a += 1 if a == 10: break #break语句在for循环中 for i in range(5,9): print i if i>8: Break #break语句在双层循环语句 a = 10 while a <= 12: a += 1 for i in range(1,7): print i if i == 5: break if a==11: Break #continue语句:强制停止本次循环,直接跳到下一次循环 a = 3 while a<6: a +=1 if a == 4: continue print a for i in range(1,5): if i==2: continue print i for i in range(1,5): print i if i==2: continue
”’
continue:只是结束本次循环,然后继续进入下一个循环
break:直接结束整个循环
”’
区别:
for i in range(1,4): if i ==2: continue print i for i in range(1,4): if i==2: break print i
结果:
1
3
1
(五)Python函数
1.函数(function)
①系统自带
②自定义
#系统自带 #字符串长度 a = "flagisTrue" print len(a) #字符串的切割 a = "flag" b = a.split("a") print b #自定义 def a(): print "hello" a() #python中函数定义的两个含义:①申明指定的部分是函数不是对象②定义函数所包含的功能 ''' 函数定义的格式: def 函数名(): 函数内容 '''
2.形参与实参
def function(a,b): if a>b: print a else: print b function(2,5) #关键参数 def function(a=1,b=2,c=3): print a print b print c function(5) function(b=7,a=6) function(3,c=8,b=9)
输出:
5 5 2 3 6 7 3 3 9 8
3.全局变量与局部变量
差别在于:作用域
①局部变量
def func(a): i = 1 print i i=2 print i func(2)
结果:
>>> 2 1 >>>
②全局变量
global声明全局变量的标识符
def func(): global i i = 7 print i i = 3 print i func() def func1(): global a a = 9 func1() #因为a是全局变量 print a
结果:
>>> 3 7 9 >>>
试想:
def func1(): global a a = 9 print a
输出:
Traceback (most recent call last): File "C:/Users/linmeini_love/Desktop/123.py", line 4, in <module> print a NameError: global name 'a' is not defined
4.函数使用与返回值
#返回值 #一个返回值 def test(): i = 7 return i print test() #多个返回值 def test1(i,j): k=i*j return (i,j,k) x=test1(2,5) print x def test1(i,j): k=i*j return (i,j,k) m,n,o=test1(2,5) print o
输出:
>>> 7 (2, 5, 10) 10 >>>
5.文档字符串
作用:用于查看所对应文档的功能
(下面是某个文档)
#文档字符串 def d(i,j): '''实现乘法运算的函数 函数会返回乘法运算结果''' k = i*j return k
那怎么知道该文档的功能呢?
①
print d.__doc__
输出:
实现乘法运算的函数 函数会返回乘法运算结果
②
help(d)
Help on function d in module __main__: d(i, j) 实现乘法运算的函数 函数会返回乘法运算结果
(六)函数进阶–模块
1.函数是一段程序,模块是一个程序块
''' 在使用模块之前,必须先导入指定的模块,才能使用 自带模块:标准库模块 ①标准库中与系统功能有关的模块叫sys模块 ·版本:version ·地址:executable ·返回windows操作系统:getwindowsversion() ·查看倒入模块列表:modules.keys() '''
>>> import math >>> math.pi 3.141592653589793 >>>
>>> import sys >>> sys.version '2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)]'
>>> sys.executable 'C:\\Python27\\pythonw.exe'
>>> sys.getwindowsversion() sys.getwindowsversion(major=6, minor=1, build=7600, platform=2, service_pack=‘’
>>> sys.modules.keys()
”’
2.字节编译
''' 1..pyc文件:以.pyc为后缀名的一类文件 2.在执行Python模块时有两种执行方式:①模块内容--字节编译-->二进制语言(产生对应的.pyc文件:二进制文件)--->执行②直接执行对应模块的二进制语言 那为什么我们之前说Python是解释型语言,而不是编译型语言,现在又说它有字节编译?如下: Python虽然出现了编译这个过程,但是该过程在解释其中发生的。编译形语言是说在软件中就有一个独立的编译模板去将程序编译 3..pyc文件产生的方式:(2种) ①本来没有,直接执行.py为后缀的某个模块,就会生成对应的.pyc文件 ②打开Python编辑器 cmd-> 4.在Python中,.pyc文件最大的作用是加快了模块的运行速度,.pyc文件还可以做反编译等高级功能 5.二进制软件阅读器(Binary Viewer) '''
(七)Python数据结构
1.数据结构
#对三个物品:apple、orange、pear ''' 按顺序存储 ''' #存储一(列表):可以取出 ["apple","orange","pear"] #存储二(元组):不可以取出,也不可以更改 ("apple","orange","pear") #存储三(字典):值存储到某一有名字的键 {"sam":"apple","Jac":"orange","mating":"pear"} ''' 数据结构:数据的组织方式,数据的存储方式,数据结构是静态的 算法:运算方法,思维,动态的 数据结构是算法的基础,但是相同的数据结构运用不同的算法拥有不同的效率 '''
2.棧
3.队列
(八)面向对象
(九)文件与Python异常处理
(十)标准库与Python其他使用
相关文章推荐
- python实现ftp上下传,支持断点续传。
- python re 模块 findall 函数用法简述
- 关于python中文乱码,项目的教训
- Windows安装Python图像处理库:PIL模块
- python学习粘贴
- 一、机器学习系统设计笔记之python机器学习入门
- Python基本语法
- 【转】 Python subprocess模块学习总结
- Python待完善
- Python资料收集
- python得爬虫关键词
- spark机器学习中安装ipython步骤
- python常用的自省函数
- 机器学习算法的本质(Python和R准则)
- python继承中重载问题:私有函数不能被子类重写
- 【转】关于python文件操作
- Python的13大图形库
- Python调用jieba分词中的中文编码问题
- LeetCode----Combination Sum III
- Python thread