【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 \ ...
随机推荐
- CSAPP-Shell Lab
提供的工具: parseline:获取参数列表char **argv,返回是否为后台运行命令(true). clearjob:清除job结构. initjobs:初始化jobs链表. maxjid:返 ...
- 手机号码归属地的自动查询.py(亲测有效)
import requests url = "http://m.ip138.com/sj.asp?mobile=" kv = {'user-agent':'Mozilla/5.0' ...
- Laf v1.0 发布:函数计算只有两种,30s 放弃的和 30s 上线的
一般情况下,开发一个系统都需要前端和后端,仅靠一个人几乎无法胜任,需要考虑的特性和功能非常多,比如: 需要一个数据库来存放数据: 需要一个文件存储来存放各种文件,比如图片文件: 后端需要提供接口供前端 ...
- golang常用库包:log日志记录-uber的Go日志库zap使用详解
Go 日志记录库:uber-go 的日志操作库 zap 使用 一.简介 zap 是 uber 开源的一个高性能,结构化,分级记录的日志记录包. go1.20.2 zap v1.24.0 zap的特性 ...
- day11:return关键字&全局/局部变量&函数名的使用&函数的嵌套&nonlocal关键字&locals/globals
关键字:return 自定义函数的返回值,return可以把值返回到函数的调用处 1.return+六大标准数据类型,还有类和对象,函数 如果不定义return,默认返回的 ...
- Looper 源码分析
//可以看到我们的Looper是存放在线程独有的ThreadLocal进行隔离的 //也就是每个线程独有一份Looper static final ThreadLocal<Loope ...
- 部署:戴尔iDRAC+Ubuntu 18.04系统安装
Ubuntu镜像下载链接:http://mirrors.aliyun.com/ubuntu-releases/18.04/ 1.登录戴尔管理口 2.点击虚拟控制台 3.选择镜像 4.挂载镜像 5.选择 ...
- CSS3-页面布局基础二——Box Model、边距折叠、内联与块标签
一.盒子模型(Box Model) 盒子模型也有人称为框模型,HTML中的多数元素都会在浏览器中生成一个矩形的区域,每个区域包含四个组成部分,从外向内依次是:外边距(Margin).边框(Border ...
- Portainer安装
个人博客地址: https://note.raokun.top 拥抱ChatGPT,国内访问网站:https://www.playchat.top Portainer是一个可视化的容器镜像的图形管理工 ...
- gradle下载
gradle下载:https://services.gradle.org/distributions/src.zip源码 .bin.zip安装文件.all.zip源码+安装文件 配置环境变量.