python语法笔记
阅读原文时间:2023年08月09日阅读:1

    最近抽时间恶补了一下python语法,做个笔记。

  1. * * *

    比较运算符的结果为bool类型,示例:a=10,b=20   print("a>b吗?",a>b)     运行结果: a>b吗?,False

  2. =称为赋值运算符,==称为比较运算符

  3. 使用条件表达式进行比较

  4. 如果在循环体中不需要使用到自定义变量,可将自定义变量写为“_”

  5. 使用import方式进行导入时,只能跟包名或模块名;使用from…import可以导入包、模块、函数、变量

  6. break语句:用于结束循环结构,通常与分支结构if一起使用

  7. continue语句:用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用

  8. for…else…,  while…else…语句:                          

  9. 嵌套循环:循环结构中又嵌套了另外的完整的循环结构,其中内层循环作为外层循环的的循环体执行

  10. 二重循环中的break与continue:用于控制本层循环

  11. 列表创建的两种方式:ls=[1,2,3] 或 ls=list([1,2,3])

  12. 切片:列表名[start:stop:step],stop为开区间。 如:list=[1,10,20,30,50,45]   print(list[1:4:2])    结果:[10,30]。 start为空,默认第一个元素;stop为空,默认最后一个元素;step为空,默认步长为1。step为正数,从start开始往后计算切片;step为负数,从start开始往前计算切片。

  13. range()函数:用于生成一个整数序列,常用到for循环中的遍历对象。

  14. 列表生成式:[i for i in range(1,10)] 

  15. 字典:字典的创建方式

  16. 获取字典中的元素:[] 或 get()方法

  17. 字典元素的增、删、改操作:

  18. 字典生成式:{item.upper():price for item,price in zip(items,prices)}    解析:item代表key,price代表value,zip()函数用于将可迭代的对象items、prices作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表。

  19. 元组的创建:①直接小括号:t=('hello','python',80);②使用内置函数tuple():t=tuple(('hello','python',80)) ;③只包含一个元素的元组需要使用逗号和小括号:t=(10,);④空元组:t=()或t=tuple()

  20. 集合:集合是没有value的字典。定义一个空集合:s=set{}

  21. 集合的相关操作:add()方法 一次添加一个元素;update()方法 一次至少添加一个元素

  22. 集合生成式:{i for i in range(1,10)} 

  23. 列表、元组、字典、集合总结

  24. 字符串:常用方法(查询:index、rindex,大小写转换:upper、lower,内容对齐:center,劈分:split,判断:isdecimal,替换:replace,合并:join)、切片、比较

  25. 格式化字符串:①%作占位符:%s字符串、%i或%d整数、%f浮点数。语法:'我的名字叫:%s,今年%d岁了' % (name,age) ②{}作占位符:语法:'我的名字叫:{0},今年{1}岁了'.format(name,age)

  26. 在函数调用过程中,进行参数的传递:如果参数是不可变对象,在函数体的修改不会影响实参的值;如果是可变对象,在函数体的修改会影响实参的值。

  27. 函数的参数定义:①个数可变的位置参数:定义函数时,可能无法事先确定传递的位置实参的个数时,使用可变的位置参数,该参数只能是1个(使用*定义个数可变的位置形参,结果为一个元组);②个数可变的关键字形参:定义函数时,无法事先确定传递的关键字实参的个数时,使用可变的关键字形参,该参数只能是1个(使用**定义个数可变的关键字形参,结果为一个字典)③在一个函数的定义过程中,既有个数可变的位置形参,又有个数可变的关键字形参,要求个数可变的位置形参放在个数可变的关键字形参之前。

  28. 变量的作用域:①局部变量:在函数内定义并使用的变量,只在函数内部有效,局部变量使用global声明,这个变量就会变成全局变量;②全局变量:函数体外定义的变量,可作用于函数内外。

  29. 递归函数:如果在一个函数的函数体内调用了该函数本身,这个函数就称为递归函数。

  30. python的异常处理:如果程序中没有加异常处理机制,出现异常后,程序会报错退出。①try…except结构:try块中出现异常,except块捕获异常使程序继续执行②try…except…else结构:如果try块中没有抛出异常,则执行else块,如果try中抛出异常,则执行except块;③try…except…else…finally结构:finally块无论是否发生异常都会被执行,常用来释放try块中申请的资源。

  31. 类的创建:实例方法、静态方法、类方法

  32. 创建类的对象 

  33. 类属性、类方法、静态方法的使用方式:①类属性:类中方法外的变量称为类属性,被该类的所有对象所共享;②静态方法:使用@staticmethod修饰的方法,使用类名直接访问的方法;③类方法:使用@classmethod修饰的方法,使用类名直接访问的方法

  34. 动态绑定属性和方法:

  35. 封装:将属性和方法包装到类对象中,提高程序的安全性。如果类中属性不希望在类对象外部被使用,前面使用两个“_”

  36. 继承,支持多继承

  37. 方法重写:如果子类对继承自父类的方法或属性不满意,可以在子类中对其进行重写编写。子类重写后的方法中可以通过super().xx()调用父类中重写的方法

  38. main,以主程序形式运行

  39. python中的包(package),含__init__.py。包是一个分层次的目录结构,它将一组功能相近的模块组织在一个目录下(作用:代码规范、避免模块名冲突)。报的导入:import 包名.模块名 as 别名

  40. python中常用的内置模块

  41. 第三方模块的安装及使用。安装:pip install 模块名;使用:import 模块名。

  42. 文件的读写操作,open()

  43. 文件对象的常用方法

  44. with语句(上下文管理器),不用close

  45. os模块操作目录相关函数(import os)

  46. os.path模块操作目录相关函数(import os.path)