python语法笔记
最近抽时间恶补了一下python语法,做个笔记。
比较运算符的结果为bool类型,示例:a=10,b=20 print("a>b吗?",a>b) 运行结果: a>b吗?,False- =称为赋值运算符,==称为比较运算符
- 使用条件表达式进行比较

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

使用import方式进行导入时,只能跟包名或模块名;使用from...import可以导入包、模块、函数、变量
- break语句:用于结束循环结构,通常与分支结构if一起使用


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

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


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

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


列表创建的两种方式:ls=[1,2,3] 或 ls=list([1,2,3])
切片:列表名[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开始往前计算切片。
range()函数:用于生成一个整数序列,常用到for循环中的遍历对象。


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

字典:字典的创建方式

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

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

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

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

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

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


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

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

字符串:常用方法(查询:index、rindex,大小写转换:upper、lower,内容对齐:center,劈分:split,判断:isdecimal,替换:replace,合并:join)、切片、比较
格式化字符串:①%作占位符:%s字符串、%i或%d整数、%f浮点数。语法:'我的名字叫:%s,今年%d岁了' % (name,age) ②{}作占位符:语法:'我的名字叫:{0},今年{1}岁了'.format(name,age)



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

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

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



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

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



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

创建类的对象

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

动态绑定属性和方法:


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

继承,支持多继承

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

main,以主程序形式运行

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

第三方模块的安装及使用。安装:pip install 模块名;使用:import 模块名。
- 文件的读写操作,open()

文件对象的常用方法

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

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

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

python语法笔记的更多相关文章
- python语法笔记(四)
1.对象的属性 python一切皆对象,每个对象都可能有多个属性.python的属性有一套统一的管理方案. 属性的__dict__系统 对象的属性可能来自于其类定义,叫做类属性:还可能 ...
- python语法笔记(三)
1. 动态类型 python的变量不需要声明,在赋值时,变量可以赋值为任意的值.这和Python的动态类型语言相关. python对象是存在于内存中的实体,代码中写对象名,只是指向该对象的引用.引用和 ...
- python语法笔记(二)
1. 循环对象 循环对象是一类特殊的对象,它包含一个next()方法(在python3中是 __next__()方法),该方法的目的是进行到下一个结果,而在结束一系列结果之后,举出 StopItera ...
- Python 语法笔记
1.else与while结合 while a>0: pass else: pass #当a<=0时执行 2.with语法,无需关闭文件,python自动关闭 with open('a.tx ...
- python语法笔记(七)
python标准库 Python有一套很有用的标准库(standard library).标准库会随着Python解释器,一起安装在你的电脑中的.它是Python的一个组成部分.这些标准库是Pytho ...
- python语法笔记(六)
1.序列的方法 python中序列包含列表list.元组tuple.字符串str. 可以用于序列(表.元组.字符串)的内建函数: len(s) 返回: 序列中包含元素的个数 min(s) 返回 ...
- python语法笔记(五)
1.python内存管理 (1)对象内存使用 &nsbp;&nsbp;&nsbp;&nsbp;在python中通过执行内建函数 id(obj) 可以获得对象obj在内存 ...
- python语法笔记(一)
1. python中多个函数或者类定义可以放在一个.py 文件中,视为一个模块.模块的.py文件中,一般要写 if __name__ == '__mian__' 用来单独执行该模块内的某些函数. 2. ...
- python 语法笔记(一)
#python3里面input默认接收到的事str类型,而python2里面却认为是int类型n=int(input('请输入想要第几个数')) #如果将int省去,python3中该程序将会报错a, ...
- python 笔记2:python语法基础
python语法学习笔记: 1 输入输出 input(),print(). name = input('input your name : ')print('hello ,'+name)print(& ...
随机推荐
- 2021-07-15:接雨水 II。给你一个 m x n 的矩阵,其中的值均为非负整数,代表二维高度图每个单元的高度,请计算图中形状最多能接多少体积的雨水。
2021-07-15:接雨水 II.给你一个 m x n 的矩阵,其中的值均为非负整数,代表二维高度图每个单元的高度,请计算图中形状最多能接多少体积的雨水. 福大大 答案2021-07-15: 小根堆 ...
- vue全家桶进阶之路46:Vue3 Axios拦截器
在Vue.js 3中,使用Axios与Vue.js 2.x中类似,但是需要进行一些修改和更新,下面是Vue.js 3中Axios的定义和使用方式: 首先,你需要安装Axios和Vue.js 3.x,可 ...
- ModuleNotFoundError: No module named 'flask_wtf'
ModuleNotFoundError: No module named 'flask_wtf' 解决: pip install flask_wtf
- phpstudy-sqlilabs-less-2
题目:GET - Error based - Intiger based 基于错误的数字型注入 ?id=1 ?id=1 order by 3 ?id=-1 union select 1,2,3 ?id ...
- 【Azure K8S】AKS升级 Kubernetes version 失败问题的分析与解决
问题描述 创建Azure Kubernetes Service服务后,需要升级AKS集群的 kubernetes version.在AKS页面的 Cluster configuration 页面中,选 ...
- Kafka关键原理
日志分段切分条件 日志分段文件切分包含以下4个条件,满足其一即可: 当前日志分段文件的大小超过了broker端参数 log.segment.bytes 配置的值.log.segment.bytes参数 ...
- Python Selenium UI自动化测试
Python Selenium UI自动化测试 1.自动化测试基础 1.1 自动化测试的定义 将人为的测试行为转化为机器自动执行的过程 1.2 自动化测试的目的 减少成本,提高测试效率 减少人为因素对 ...
- 曾经辛苦造的轮子,现在能否用 ChatGPT 替代呢?
上一篇文章 我在 vscode 插件里接入了 ChatGPT,解决了代码变量命名的难题 中,展示了如何在 vscode 插件中使用 ChatGPT 解决代码变量命名的问题.vscode 插件市场中有很 ...
- 基于FFMPEG+SDL的简单的视频播放器分析
基于FFMPEG+SDL的简单的视频播放器分析 前言 最近看了雷霄骅前辈的博客<最简单的基于FFMPEG+SDL的视频播放器 ver2 (采用SDL2.0)>,参照他的代码,在window ...
- python接口自动化封装导出excel方法和读写excel数据
一.首先需要思考,我们在页面导出excel,用python导出如何写入文件的 封装前需要确认python导出excel接口返回的是一个什么样的数据类型 如下:我们先看下不对返回结果做处理,直接接收数据 ...