目录
基本计算
decimal.Decimal(“ ”)精准小数
x//y 地板除 取比结果小的最大整数
divmod(x,y) 返回(x//y,x%y)
x**y==pow(x,y) x的y次方
random库
randomint 随机数生成
copy库
copy.copy(x)
实现浅拷贝
copy.deepcopy(x)
实现深拷贝
列表
reverse 反转
count 输出位置上的信息
index 输出信息的位置
列表推导式
x=[i*2 for i in x]
基本语法:[expression for x in y if z] (可嵌套)
创建多元列表 : x=[[0]*2 for i in range (3)] //[[0, 0], [0, 0], [0, 0]]
字符串
count("") 返回子字符串的个数
find(“”) 返回子字符串的位置(从前向后找)
rfind(“”) 返回子字符串的位置(从后往前找)
replace("旧字符串","新字符串") 将旧字符串替换为新字符串
translate(table)
使用方式:
1.先制定一个转换表格 table=str.maketrans("ABCDEFG","1234567")
2.输入一段字符串.translate(table)
3.输出结果
startswith(“”,x,y)从x位置开始 ,y位置结束,查找首元素是否是此字符串,如果是返回true,不是返回false
startswith(("","",""))从中选一个,进行匹配,匹配成功返回true
istitle() 判断是否只有开头字母是大写
isupper() 判断是否全是大写字母
upper() 将所有的字母转换为大写字母
isalpha() 判断是否全是字母(空格不是字母)
isnumeric() 判断字符串是否全是数字
partition("") 以引号中的内容能够为分割,分割成子字符串,返回一个三元组
split("",-1) 将结果打包成列表返回,后面的数字为制定分割次数
"x".join(["y","z","m"]) 以x为分隔符,将y,z,m连接起来(也可以用元组包裹起来)
format(x) 例:“1+2={},2的平方是{}”.format(3,4)
输出格式:
sign: +,-
#: 显示前缀
width:宽度
grouping_option: 千分符,可以用逗号或者句号
precision:精度值{:.2f}小数点后保留2位 {:.2g}小数点前后保留2位 {:.6}字符串类型,保留前六位 无法对整数使用
type:类型选项
{0:0>10}:第0个,用0在右侧填充10个位置
f字符串
字典格式
dic={"李宁":"一切皆有可能"}
输出
print["李宁"]
dict
dict1=dict(李宁="一切皆有可能")
dict1["李宁"]=“XXXXX” :可以改变索引值,若没有此关键字,则为添加新的关键字
fromkeys((1,2,3),"赞"):{1:“赞”,2:“赞”,3:“赞” }
for eachkey in dict1.keys():
print(eachkey)
(输出所有的序号)
for eachvalue in dict1.values():
print(eachvalue)
(输出所有内容)
for eachitem in dict1.items():
print(eachitem)
(用元组把每个项打印出来)
get
dict1.get(32,"not have")
(如果没有32序号,则打印not have)
fromkeys
a={}
a=a.fromkeys((1,2,3),"good") (批量赋值)
setdefault
a.setdefault(5,"good") (插入)
a.setdefault(“dood”) ("dood"为序号)
update
a.update(b) (用b去更新a)
类
init魔法方法
相当于c++中的构造函数
str魔法方法
默认打印对象的时候打印str魔法方法return的返回值
使用方法:两侧分别加一个"_"
super
用于解决继承时子类覆盖掉父类中重名函数的问题
使用方式:1.super(当前类名,self) . 重复的函数名称()
2.super().重复的函数名称()
定义私有属性
self.__money=20000
定义私有方法
def __money(name):
异常
格式
try:
XXXXX
except 异常类型(Exception) as result:
print(“ ”+str(result))
else:
(没有异常的时候执行的代码)
finally:
(无论异常与否都要执行的代码)
自定义异常
raise
抛出自定义异常对象
模块
导入模块
import 模块名
from 模块名 import 功能1,功能2,功能3(只导入后面的功能)
from 模块名 import*(导入此模块的所有功能)
import 模块名 as 别名
制作模块
新建一个python文件,起名后导入
测试信息
if__name__=="__main__":
testA(1,1)
all列表
当使用from XX import *导入时,只能导入列表中的元素
包
制作包
new-python package-
导入包
import 包名.模块名
注意: 若用from 包名 import *,则必须在init文件中添加all=[]列表