【python基础】日常知识点整理
【三种方法调用】
1. 类中的方法区分为普通方法(self),静态方法(@staticMenthod),类方法@classMenthod,隐式参数(cls)
<1> 普通方法:第一个参数 self 代表实例对象本身,可以使用 self 直接引用定义的实例属性和普通方法;如果需要调用静态方法和类方法,通过「 类名.方法名() 」调用即可。
<2> 静态方法:使用「 类名.静态变量 」引用静态变量,利用「 类名.方法名() 」调用其他静态方法和类方法;如果需要调用普通方法,需要先实例化一个对象,然后利用对象去调用普通方法。
<3> 类方法:第一个参数 cls 代表类本身(等价),通过「 cls.静态变量 」或「 类名.静态变量 」引用静态变量,利用「 cls.方法名() 」或「 类名.方法名() 」去调用静态方法和类方法;如果需要调用普通方法,需要先实例化一个对象,然后利用对象去调用普通方法。
用法建议:
* 静态方法和类方法是针对类定义的,除了可以使用类名去调用,也可以使用实例对象去调用,但是不建议使用实例对象调用。
* 一般来说, 如果方法内部涉及到实例对象属性的操作,建议用普通方法.
如果方法内部没有操作实例属性的操作,仅仅包含一些工具性的操作,建议使用静态方法;
如果需要对类属性,即静态变量进行限制性操作,则建议使用类方法。
2. 类的继承 与 super():
super().__init__(),就是继承父类的__init__()方法,同样可以使用super()去继承其他方法
【字符串前缀】
Python 字符串前加f,r,u,b的含义
f: 表示字符串内支持大括号内的python表达式,如:
logger.info(f"Total time taken: {time.time() - start_time}")
r: 去掉反斜杠的转义机制,如下面例子,表示单纯字符串而不表示换行
logger.info(r"Test\n\n\n")
logger.info(r"C:dir1\dir\2")
u:一般出现在中文字符串前,防止出现乱码
b: 表示这是一个bytes类型对象,在网络编程中,服务器和浏览器只认bytes类型数据,如:
response = b'hello world'
【路径处理】
os.path.abspath(__file__): 获取当前文件的绝对路径,包含当前文件名
os.path.dirname(__file__) :去掉文件名,返回当前文件的上层目录
示例:
os.path.dirname(os.path.abspath(__file__))
os.listdir(path): 返回一个列表,包含指定路径下所有的文件名以及文件夹名
os.getcwd(): 获取当前路径的字符串
os.path.join(path1, path2 ...): 将多个字符串组成一个路径
示例:
path = os.path.join('/home' , 'user', 'documents', 'file.text')
path输出:/home/user/documents/file.text
说明:在Windows系统中路径分隔符是反斜杠\, 在Unix和Linux系统中路径分隔符为斜杠/,在使用os.path.join()拼接时会自动根据当前操作系统选择合适的分隔符来拼接。
【字典的排序】经过sorted排序后返回一个以(key,value)组成的列表,列表的每个元素是一个元组
按key排序:
lst = sorted(iter, key = lambda x:x[0], reverse=True)
按value排序:
lst = sorted(iter, key = lambda x:x[1], reverse=True)
【异常处理】
1. 关键字raise:主动抛出指定的异常,触发后程序停止
raise有三种用法:
<1> raise: 单独使用,直接根据程序自身运行引发异常类型
<2> raise exceptionName: 表示引发指定的异常类型
<3> raise exceptionName(reason): 表示引发指定的异常类型,并给出异常原因提示
示例:raise ValueError ('参数类型错误:', params)
2. 异常捕获
try:
# code
except Exception as e:
# 捕获异常以后的处理,如打印print(e.args)
【python基础】日常知识点整理的更多相关文章
- python基础全部知识点整理,超级全(20万字+)
目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...
- Python自动化办公知识点整理汇总
知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...
- python基础面试题整理---从零开始 每天十题(01)
最近在弄flask的东西,好久没写博客的,感觉少了点什么,感觉被别人落下好多,可能渐渐的养成了写博客的习惯吧.也是自己想学的东西太多了(说白了就是基础太差了,只是know how,不能做到konw w ...
- 07: python基础 零碎知识点
目录: 1.1 python异常处理 1.2 三元运算,filter和map与lambda表达式结合使用举例 1.3 内置方法 1.4 动态导入模块 1.1 python异常处理返回顶部 1.Pyth ...
- python基础===flask使用整理(转)
flask 使用的一些整理 资源 Flask 文档|英文| expore flask| 快速教材| flask-admin| Flask-DebugToolbar| Flask-Login| Flas ...
- python基础面试题整理---从零开始 每天十题(02)
书接上回,我们继续来说说python的面试题,我在各个网站搜集了一些,我给予你们一个推荐的答案,你们可以组织成自己的语言来说出来,让我们更好的做到面向工资编程 一.Q:说说你对zen of pytho ...
- javascript基础入门知识点整理
学习目标: - 掌握编程的基本思维 - 掌握编程的基本语法 typora-copy-images-to: media JavaScript基础 HTML和CSS 京东 课前娱乐 众人皆笑我疯癫,我笑尔 ...
- Csharp 基础笔记知识点整理
/* * @version: V.1.0.0.1 * @Author: fenggang * @Date: 2019-06-16 21:26:59 * @LastEditors: fenggang * ...
- Python基础面试题整理
基础 Python中lambda是什么意思 Python中的pass是什么意思 作为解释型语言,Python如何运行 什么是Python的单元测试 在Python中unittest是什么 如何将数字转 ...
- Python黑客编程知识点整理
Python转义字符 转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) ,将当前位置移到前一列 008 \f 换页(FF),将当前位置移到下页开头 012 \ ...
随机推荐
- 剑指 offer 第 8 天
第 8 天 动态规划(简单) 剑指 Offer 10- I. 斐波那契数列 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N)).斐波那契数列的定义如下: F(0) ...
- NotionAI - 文档领域的ChatGPT,一款 AI 加持的在线文档编辑和管理工具
简介 NotionAI - 文档领域的ChatGPT,一款 AI 加持的在线文档编辑和管理工具 作为国际领先的在线文档编辑和管理工具,Notion受到了广大用户的欢迎,尤其是程序员们.它不仅支持笔记. ...
- es6数组相关操作
1. 获取两个数组中某个属性值相等的项 let a=[{name:1},{name:4},{name:3}] let b=[{name:5},{name:4},{name:2}] let index ...
- webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题
webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题 目录 webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题 记录个iusse. 插入音频数据后,GetAu ...
- String API(全)
类型 名称 char charAt(int index)返回 char指定索引处的值. int codePointAt(int index)返回指定索引处的字符(Unicode代码点). int co ...
- Centos9网卡配置
Centos9 网卡配置文件已修改,如下 [root@bogon ~]# cat /etc/NetworkManager/system-connections/ens18.nmconnection [ ...
- kubernetes核心实战(八)--- service
13.service 四层网络负载 创建 [root@k8s-master-node1 ~/yaml/test]# [root@k8s-master-node1 ~/yaml/test]# vim m ...
- dfs实现
1.思路:从图中的未访问的一个顶点开始,沿着一条路一直走到底,然后这条路尽头的节点,在从另外一条路走到底,不断递归此过程,直到所有遍历完成特点:不撞南墙不回头2.具体实现:当从一个未知的顶点出发,将这 ...
- Gartner最新报告,分析超大规模边缘解决方案
当下,酝酿能量的超级边缘. 最近,我们在谈视频化狂飙.谈AIGC颠覆.谈算力动能不足,很少谈及边缘.但"边缘"恰恰与这一切相关,且越发密不可分,它是未来技术发展的极大影响因子. & ...
- super 与 this 关键字
super与this用法相似: 1.普通的直接引用 2.形参与成员名字重名,用 this 来指代类本身,super指代父类 public class Students extends Person { ...