字符串与列表##
- .title()头字母大写
- .upper()全大写
- .lower()全小写
- 字符串之间可以直接相+合并
first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
print(full_name)
可得到
ada lovelace
-
.rstrip()取删除右侧空格的字符串
-
.lstrip()取删除左侧
-
.strip()取删除左右侧
-
.replace("被替换","替换")
-
str.split()将字符串按空格分割成列表
-
str1.join(str2)将str2(字符串、元组、列表中的元素)连接生成新的字符串
-
连接数字与字符串时用str(num)转换num类型
-
.append()将元素附加到列表末尾
-
.insert(索引,元素)
-
del str[i]删除str中i号元素
-
.pop(i)删除i号元素(若无i默认使用末尾元素),并且接着使用此元素
-
.remove(value)可以根据值删除元素,但只删除第一个元素
-
永久性排序:.sort()按照字母顺序排序,.sort(reverse=True)则反方向
-
临时性排序:sorted(str),也可使用reverse=True
-
倒置列表:.reverse()
-
列表索引可使用负数
-
for man in men:
-
for num in range(1,5):
-
python以缩进代替{}
-
打印切片:printf(str[:4])
字典##
for name, language in favorite_languages.items()
- .keys()键列表 .value()值列表
实参balabala##
- 使用*创建空元组,使用**创建空字典
- 已知数量形参放置在未知数量形参前
模块与函数##
- import pizza打开pizza.py复制所有函数,可通过如pizza.make()的方式调用make函数
- from pizza import make_pizza从pizza.py中调用make_pizza函数
- as p简称pizza模块,as mp简称make_pizza函数
- from pizza import *也可复制所有函数,使用make()。PS:容易与原项目中同名函数覆盖,*为通配符
类##
- def __ init__(self,1,2,3):初始化1,2,3属性(双下划线)
- 将子类中特殊方法与父类中同名即可覆盖
- 导入过程与函数基本相同
文件操作##
- 使用
with open('file.txt') as file:
可避免在不合适的时间关闭的情况 - 若未规定打开方式则默认读取模式
- 由于read()到达文件末端是会返回空字符串,会多输出一个空行,可使用contents.rstrip()删去空行
- read()读取文件的全部内容,作为字符串存储(含换行)
- readlines()从文件中读取每一行,存储在一个列表中
- 当文件不存在而已open()形式打开时自动创建
- 以'w'模式打开时会自动覆盖原文件
- 在'w'和'a'模式下使用.write(str)分别是写入(覆盖)与追加文本
- 通过
try-except
捕获错误,可在缺少有效数据时也可继续运行,也能抵御恶意攻击 - 使用列表和循环访问多个文件
- 理解存储数据与写入文件的区别
- 在'w'模式下,使用json.dump(data,file)将数据存入文件中
- 在'r'模式下,使用json.load(file)将文件中的数据读取到内存中
- 重构代码使每条函数执行单一而清晰的任务,让代码便于维护和拓展
PS:本章详见remember.py
测试##
- 使用unittest框架时,测试用例必须以test_打头
- 断言方法:
方法 | 用途 |
---|---|
assertEqual(a,b) | a==b? |
assertNotEqual(a,b) | a!=b? |
assertTrue(x) | x is True? |
assertFalse(x) | x is False? |
assertIn(item,list) | item in list? |
assertNotIn(item,list) | item !in list? |
- 使用列表与循环测试多个样例