Python知识点总结

第一章 python环境的搭建 Python的简介和安装 anaconda的简介 pycharm编辑器

第二章:变量和数据类型
注释:单行注释和多行注释

变量:标识符(变量名,函数名,类名)
标识符命名规则:1、只能包含字母、数字和下划线。变量名可以以字母或者下划线开头。但是不能以数字开头。
2、不能包含空格,但可以使用下划线来分隔其中的单词。
3、不能使用Python中的关键字作为变量名
4、建议使用驼峰命名法,驼峰式命名分为大驼峰(UserName)。和小驼峰(userName)。

数据类型:Number string list tuple sets dict

list:使用方括号表示,有序可变对象,可以使用切片进行修改和访问
tuple:使用圆括号,有序不可变对象,只能使用切片进行访问
sets:使用花括弧,无序可变对象
dict:使用花括弧,key与value之间用冒号隔开,每个键值对用逗号,无序可变对象

总结:不可变对象(number,string,tuple) 可变对象(list,sets,dict)

运算符:算术,赋值,比较,逻辑(and or not),位运算符
 
第三章:字符串处理
输入和输出:input print
下标和切片:下标没有冒号,切片是有冒号[start:end:step],类似于range(start,end,step)
常见的字符串函数:find,replace

第四章:列表
访问列表:可以用下标进行访问,也可以使用切片
操作列表:增删改查,增(append,insert),删除(pop,del,remove,clear),改(使用下标,insert),查询(使用下边,切片)
列表函数:

第五章:元祖和字典
元祖:使用圆括号,有序不可变对象,只能使用切片进行访问
元祖的函数:可以直接使用的函数len,max,min;元祖可以直接调用的方法index,count
字典:使用花括弧,key与value之间用冒号隔开,每个键值对用逗号,无序可变对象
操作字典:
深浅拷贝:只有可变对象才有深浅拷贝的概念;直接赋值;浅拷贝只是对原对象的应用,修改:如果对象元素是可变对象会影响原来的对象;深拷贝是对原对象一个完整的拷贝

第六章:条件控制和循环语句
条件控制:if
循环:while(循环条件不确定时) for(循环条件已经确定),都可以嵌套if判断
break,continue,pass:1:终止当前循环,如果还有上一层循环,从上一层循环从头开始;2:跳出当前循环,从当前循环从头开始;3:就是一个空语句,起到占位符的作用
range:range(start:end:step)
列表推导式:[expr for value in collection if condition]

第七章:函数
函数定义:def,函数名,形参(实参),缩进代码块
函数参数:必备参数(位置参数,关键字参数),默认值参数,不定长参数:加了星号(*)的变量名会存放所有未命名的变量参数。加了(**)会存放所有命名的变量参数
(*返回一个元祖,**返回的是字典)
返回值:return(递归函数使用),一个函数只有一次返回值,return后面的语句不会执行,返回值需要用print打印出来
局部变量:在函数里面定义的变量称为局部变量
全局变量:函数外面定义的变量称为全局变量(只有针对不可变对象才有意义)
注意:不可变对象(在函数中传递的是变量的值),在函数里面进行修改,等于声明一个新的变量,如果想在全局作用域生效,需要使用global进行声明
匿名函数:lambda 参数:表达式
递归函数:就是自己调用自己,结合return
高阶函数:map,filter,reduce

第八章:面向对象编程
面向对象:把对象的特征和行为提取出来进行分类和封装,提高代码的利用率
定义类:类(一些属性和方法的集合);类属性;实例属性;方法(类中定义的函数);方法重写(重载,在继承的时候用的多);实例化对象(类是对象的类型,对象是类的实例)
继承和多态:单继承(主要),super(),__init__();多态:多态即多种形态,在运行时确定其状态,在编译阶段无法确定其类型,这就是多态。
访问限制:__foo(私有属性),在类里面包装成 _类名__foo,在外面调用的话使用 对象名._类名__foo
类方法:装饰器 @classmetho,不能访问实例属性,需要cls
静态方法:通过装饰器 @staticmethod  装饰;不能访问实例属性;参数不能传入self(都可以通过类名,或者对象名调用)  

第9章:模块和包
模块:简单py文件看成是一个包,也可以把不包含__init__.py文件的目录看成是一个包
调用方法:import...;from...import... ;import as...;from...import * 
自定义模块之间调用顺序:1,首先是当前目录;2,Pythonpath下的目录;3,安装Python的默认目录
注意事项:1,如果自定义是math(与系统模块重名),使用import math,不能覆盖系统模块;如果使用from...import math 会覆盖系统模块
     2,如果自定义是第三方类库(numpy)模块array(自定义重名模块),使用import array,第三方系统(numpy)模块array会被覆盖
dir():一般查看你所要查询的对象的变量,模块,方法
包:包含__init__.py文件,我们就称为 0包
__init__.py:初始化文件,当调用这个包的时候,首先会执行__init__.py中的代码,可以为空,使用 from <module> import *就会报错
__all__:模块和包都可以使用这个属性,主要用在包的__init__.py文件里面,定义了当我们使用 from <module> import * 导入某个模块的时候能导出的符号(这里代表变量,函数,类等)


第十章:文件和异常
文件:open(name[, mode[, buffering[,encoding]]]) 需要结合close()方法关闭文件

with open(name[, mode[, buffering[,encoding]]]) as 名称,这种方式会在合适的时候自动关闭文件

write(),向文件中写入内容,如果想写入数字,需要包装成字符串
read(),读取文件的内容,r(只读)
readlines(),也是读取文件的内容,每一行作为列表的元素,返回的是一个列表

模式:r:只读模式,不能写入;如果文件不存在会报错
     w:只能写入,不能读取;当文件不存在时,会创建一个新的文件;如果文件存在会重写
     a:追加,指针放在文件最后一位;当文件不存在时,会创建一个新的文件
     r+:可读可写,如果文件不存在会报错
     w+:可读可写,当文件不存在时,会创建一个新的文件
     a+:可读可写可追加
seek():设置文件指针的位置,seek(0,0)就是把指针放在文件开头

异常:
# 第一:except语句不是必须的(else语句必须和except语句搭配使用,不能单独出现),finally语句也不是必须的,但是二者必须要有一个,否则就没有try的意义了。
#第二:except语句可以有多个,Python会按except语句的顺序依次匹配你指定的异常,如果异常已经处理就不会再进入后面的except语句。
#第三:except语句可以以元组形式同时指定多个异常。except语句后面也不指定异常类型,则默认捕获所有异常(不推荐)
#第四:如果要捕获异常后要重复抛出,请使用raise,后面不要带任何参数或信息。不建议捕获并抛出同一个异常

         

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值