编程开发
未读Python里面的self大家学Python面向对象的时候,总会遇到一个让人难以理解的存在:self
这个self到底是谁啊,为什么每个类实例方法都有一个参数self,它到底有什么作用呢?
「先下结论:类实例化后,self即代表着实例(对象)本身」
想要理解self有个最简单的方法,就是你把self当做**「实例(对象)*的*身份证。」
Python的类不能直接使用,只有通过创建实例(对象)才能发挥它的功能,每个实例(对象)都是独一无二的,它可以调用类的方法、属性。类就像灵魂附体一样,让实例(对象)有了自己(self)的功能。
初学者会发现,类的方法(构造方法和实例方法)中都会有一个固定参数self,其实这个参数就是代表着实例(对象)本身,就像是一个身份证,实例可以凭着身份证去调用类方法。
类比人类,人类就是一个Python类,每个个体的人代表着实例(对象),而每个人的身份证代表的Python中self,每个人可以凭借身份证去上大学、坐高铁、住酒店…(方法),而Python中的实例(对象)也可以凭着self去调用类的方法。
上面是用类比的方法解释了下self的含义,说到底self就 ...
find相关练习题1.查找/tmp目录下,属主不是root,且文件名不以f开头的文件
1find /tmp ! -user root ! -name "f*"
2.查找/var目录下属主为root,且属组为mail的所有文件
1find /var -user root -group mail -type f
3.查找/var目录下不属于root、lp、gdm的所有文件
1find /var ! -user root ! -user lp ! -user gdm -type f
4.查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件
1find /var -mtime -7 ! -user root ! -user postfix -type f
5.查找/etc目录下大于1M且类型为普通文件的所有文件
1find /etc -type f -size +1M
6.将/etc/中的所有目录(仅目录)复制到/tmp下,目录结构不变
123rs ...
format()格式化输出方法format() 是 Python 中用于字符串格式化的强大工具,它提供了灵活的方式来格式化字符串。以下是 format() 方法的全面介绍。
1. 基本用法123456789# 位置参数print("{} {}".format("Hello", "World")) # 输出: Hello World# 索引参数print("{1} {0}".format("World", "Hello")) # 输出: Hello World# 命名参数print("{name} is {age} years old".format(name="Alice", age=25))# 输出: Alice is 25 years old
2. 数字格式化123456789101112131415 ...
编程开发
未读python高阶:列表推导式1、python列表推导式是一种高效创建列表的语法结构,能将循环、条件判断、和元素处理合并为一行代码,大幅提升代码简洁性。
2、列表推导式的基本语法结构
[表达式 for 变量 in 可迭代对象 if 条件]
·表达式:对迭代元素进行转换或计算,决定列表元素的最终值。
·for循环:遍历可迭代对象(如列表、元组、字符串、range等)。
·if条件(可选):删选符合条件的元素,仅满足条件的元素会被加入列表。
3、基础遍历与表达式
无需条件筛选时,直接通过表达式转换元素:
1234#生成1-5的平方数列表squares=[x**2 for i in range(1,6)]print(squares) #输出[1,4,9,16,25]#字符串长度列表words=["apple","book","car"]lengths=[len(word) for word in words]print(lengths) #输出[5,4,3]
4、条件筛选(if子句)
在for循环后添加if条件, ...
一天一个Python知识点——Day 5: 列表(List)基础操作列表(List)是Python中最灵活的有序集合类型,可以存储任意类型的元素,并且支持动态修改。今天我们将全面学习列表的核心操作!
列表的创建
列表用方括号[]表示,元素之间用逗号分隔:
123456# 创建空列表empty_list = []# 创建带初始值的列表numbers = [1, 2, 3, 4, 5]mixed = [1, "hello", 3.14, True] # 可以混合不同类型nested = [[1, 2], [3, 4]] # 嵌套列表
特殊创建方式:
1234# 使用list()构造函数chars = list("Python") # ['P', 'y', 't', 'h', 'o', 'n']# 列表推导式(后续会详细讲解)squares = [x**2 for x in range(5)] # [0, 1, ...
为什么那么多测试开发选择python语言
语言特性:Python 的设计哲学非常适合写测试代码
1. 语法简洁、可读性强
测试代码往往需要频繁修改和维护,简洁的语法可以大大提升编写效率和团队协作。
没有繁琐的类型声明(动态类型),适合快速写出验证逻辑。
1# 示例:一个简单的 API 测试函数def test_login_api(): response = requests.post("/login", json={"username": "test", "password": "123456"}) assert response.status_code == 200 assert "token" in response.json()
✅ 对比 Java 或 C#,用 Python 写同样的测试逻辑要少很多样板代码。
2. 强大的标准库
12345Python 自带丰富的标准库,比如:os, sys:处理文件系统与路径json, ...
字典8大必杀技🧠 字典热身回顾字典的本质就是 键值对:
键必须唯一且不可变(字符串、数字、元组等)
值想放啥就放啥
12345user = { "name": "Alice", "age": 30, "city": "Paris"}
🔍 1. get(key[, default]) —— 安全取值不翻车123print(user.get("age")) # 30print(user.get("email")) # Noneprint(user.get("email", "N/A")) # N/A
✅ 当键不存在时,直接返回 None 或你指定的默认值,程序再也不会因为 KeyError 崩溃。
➕ 2. update(other_dict) —— 一键合并/覆盖123user.update({& ...
苦练Python第48天:类的私有变量“防身术”,把秘密藏进类里!🧐 为什么需要“藏起来”?在 Python 里,属性默认全是 public,就像把银行卡密码贴在额头上——谁都能改。当你写了一个类给别人用:
123class Person: def __init__(self, money): self.money = money # 公有,谁都能动
用户小手一抖:
12p = Person(100)p.money = -999999 # 余额瞬间蒸发
于是我们需要“私有变量”——给属性加一把锁,让外部“看不见、摸不着”。
🔒 第一招:单下划线 _ ——约定俗成Python 没有真正的 private,但社区有默契:带一个下划线的变量,请把它当私有,别直接碰!
123class Wallet: def __init__(self, cash): self._cash = cash # 内部使用,外部别摸
外部依旧能访问,但 IDE 会画波浪线提醒你:
12w = Wallet(50)print(w._cas ...
苦练Python第47天:一文吃透继承与多继承🧬 继承的本质:把公共代码薅出来复用1234567891011class Animal: # 父类(基类) def __init__(self, name): self.name = name def speak(self): return "???"class Dog(Animal): # 子类(派生类) def speak(self): return f"{self.name}: 汪汪!">>> d = Dog("旺财")>>> d.speak()旺财: 汪汪!
结论:子类自动拥有父类所有公共属性和方法。
注意:Python 默认所有方法都是 virtual(C++ 术语),想重写就重写。
🔁 方法重写 & 扩展:子类想加料怎么办?1234567class Cat(Animal): def ...
编程开发
未读零基础学习Python指南核心理念:
动手实践是王道: 光看不动手永远学不会编程。务必边学边敲代码!
不要怕犯错: 错误(Bug)是学习过程中最好的老师。遇到报错是常态,学会看错误信息并解决它。
循序渐进: 不要试图一口吃成胖子。从基础语法开始,逐步深入。
保持好奇和兴趣: 找到自己感兴趣的小项目去实践,动力会更足。
📌 阶段一:准备与入门 (1-2天)
理解Python是什么:
网站开发 (Django, Flask)
数据分析与可视化 (NumPy, Pandas, Matplotlib, Seaborn)
人工智能与机器学习 (Scikit-learn, TensorFlow, PyTorch)
自动化脚本 (处理文件、发送邮件、网页抓取等)
科学计算
游戏开发 (Pygame)
桌面应用 (PyQt, Tkinter)
一种解释型、高级、通用的编程语言。
特点: 语法简洁清晰,像读英语句子;可读性强;拥有庞大且活跃的社区和丰富的第三方库(工具包)。
能做什么?
安装Python:
打开 命令提示符 (Windows) 或 **终端 (macOS/Linux ...
