查看python内置函数:
import builtins
for b in dir(builtins):
print(b)
abs(int)
取一个数的绝对值
all(iterable)
判断可迭代对象中所有元素是否全为True( 0、空、None、False),有则返回False,参数为空迭代对象时为True
any(iterable)
判断可迭代对象中有任意一个元素为真返回True,所有元素为空返回False,参数为空迭代对象返回False
ascii(int/str)
把输入参数(如字符串字符参数需用引号引起)返回一个字符串对象,如果参数中有非ascii字符,会用 \u,\U,\x 来替代
int()
将一个数(二进制,八进制,十六进制)或纯数字字符串转换十进制进制间转换需要在参数二注明是什么进制
bin()
返回一个二进制表示的数,输入参数可以是 int/hex/oct 数值型
oct()
返回一个八进制表示的数,输入参数可以是 int/bin/hex 数值型
hex()
返回一个十六进制表示的数,输入参数可以是 int/bin/oct 数值型
bool()
返回对象布尔值( 0、空、None、False 为False,其余为True)
※ breakpoint
断点…有待研究
bytearray(obj)
返回一个字节数组类型(bytearray),元素是可变对象,类似列表操作(append可添加元素)
参数(source,encoding,errors)
参数只能为整数、可迭代整数类型、字符串类型
1.参数是整数N,则返回N个’字节0’数组
2.参数是整数迭代对象(元素数值范围0-255)则返回迭代对象元素对应的字节数组
3.参数是字符串,需指定encoding编码,返回字符串对应的字节数组(遍历循环输出结果是ascii码)
bytes(obj)
返回一个字节数组类型(b)元素不可变类型,类似元组操作(不支持添加和删除操作)
参数(source,encoding,errors)
参数只能为整数、整数可迭代类型、字符串类型
1.参数是整数N,则返回N个’字节0’数组
2.参数是整数迭代对象(元素数值范围0-255)则返回迭代对象元素对应的字节数组
bytearray 返回 bytearray 类型,可变对象
bytes 返回 b 类型,不可变对象
callable(obj)
检查对象是否可调用(函数、方法、类、实现了__call__方法的类实例对象、lambda 返回True)
chr(integer)
输入一个整数参数(十进制和十六进制均可),返回ascii 编码对应的字符
如超出ascii编码范围(0~255)则返回unicode 编码对应字符
chr() 和 ord() 作用相反
ord(character)
输入一个字符,返回对应的ascii码,字符对应的编码超出ascii编码范围(0~255)则返回unicode
对应编码
compile(expression,"",“exec”)
将一段字符串代码编译为可执行代码
编译后的编码可用exec 或 eval执行
map(function,iterable[iterable2]…)
把字符串 或 数字 转换成复数形式
complex(1) >> (1+0j)
complex(“1”) >> (1+0j)
complex((“1+2j”)) >>(1+2j)
delattr(cls,“attribute”)
删除类对象属性和方法
参数一输入的是一个类对象,参数二需要删除的类对象属性和方法(字符串形式)
getattr(cls,“attribute”,default)
获取类对象的属性和方法
参数一输入的是一个类对象
参数二可以是类的属性或方法,如获取方法需要输入实例对象(除非该方法用了类方法修饰符)
参数三可设置默认值,如果获取的属性不存在,则返回默认值
hasattr(cls,“attribute”)
查询类对象属性和方法是否存在
参数一输入的是一个类对象,参数二需要查询的类对象属性或方法(字符串形式)
setattr(cls,“attribute”,value)
设置原有属性的值,或添加属性并设值
参数一输入的是一个类对象,参数二需要设置的类对象属性,参数三提供属性的值
set(iterable)
创建一个集合
tuple(iterable)
创建一个元组
list(iterable)
创建列表或将迭代对象转换成列表
dict()
创建字典
dict() >> 创建空字典
dict(a=1,b=2) >> {“a”:1,“b”:2}
dict(zip(“可迭代对象”,“可迭代对象”))
dict([(“a”,1),(“b”,2)])
divmod(integer,integer)
输入两个数,输出这两个数的取整商和余数,相当于 A//b A%b
enumerate(iterable,[start=1])
枚举:使可迭代对象每个元素前附加序列并返回一个枚举对象,可用list(枚举对象)或tuple,dict等转换类型输出(只能转一次)
eval()
执行一串字符串表达式并返回结果
exec()
执行一段字符串代码或文件中的字符串代码,可执行多行字符串组成的字符串代码,相较于eval函数,exec函数可执行更为复杂的字符串代码
eval() >>> 可执行一句字符串表达式并返回结果
exec() >>> 可执行多行或文件中的更为复杂的字符串代码
exit() quit()
退出IDLE编译器
filter(function,iterable)
参数一:处理函数
参数二:需过滤的可迭代对象
通过参数一的处理函数返回True或False来过滤掉可迭代对象中的元素(函数返回False则过滤掉)
map(function,iterable[iterable2]…)
把迭代对象中每个元素传给指定函数调用并返回一个函数返回值的新迭代器
float()
用于将整数或纯数字字符串转换成浮点数(非纯数字字符串会报错)
format()
用于格式化字符串,在字符串中插入{},用str.format()填充字符串中{}
{}中可用参数:
{0}{1}{2} >> 数字编号
{name}{age} >>关键字参数 使用时必须对应 .format(name=“aaa”,age=12)
{0[0]}{0[1]} >> 索引填充,参数必须是可索引对象
{}中可使用方法:
{:填充符号<左对齐 填充数量}
{:填充符号>右对齐 填充数量}
{:.2f} >> 保留两位小数并四舍五入或保留两位字符串字符
{:.2%} >> 浮点数按百分比输出
{:.2e} >> 指数记法
{:#b} >> 二进制输出
{:#d} >> 十进制输出
{:#x} >> 十六进制输出
{:#o} >> 八进制输出
{:c} >> 输出编码对应的字符
frozenset()
创建一个冻结的集合,创建后该集合为frozenset 不可变类型,不能进行add remove update等操作
dir()
打印输出对象的 [参数 、 属性 、方法] 列表,如没有输入参数则返回当前范围内的信息,如输入参数则返回该参数的信息
globals()
以字典形式打印出 当前位置 所有全局变量和值
locals()
以字典形式打印出 当前位置 所有局部变量和值
vars()
以字典形式打印出 当前位置 所有变量属性和值
hash(obj)
获取一个对象的哈希值
help(obj)
获取对象的帮助信息
id(obj)
查看对象对应的内存地址
input()
接收用户一个输入并以字符串形式返回
isinstance(obj,type)
查询一个对象是否已知类型,参数一传递一个对象,参数二传递一个类型
该函数会认为子类是父类的一种
判断是否数字(str.isdigit())
判断是否字母(str.isalpha())
判断是否数字和字母的组合str.isalnum()
issubclass(childclass,parentclass)
判断一个类是否属于另一个类的子类
iter(obj)
将一个迭代对象创建为迭代器,用next()逐个逐个读取,当读取出来的项目是最后一个后继续读取会出现
一个StopIteration 异常,可用for 遍历循环读取所有项目
next(iterable,default)
从迭代器中读取一个项目,参数一是迭代器,参数二默认值,如取项目的最后之后没有项目了就返回此处默认值
len(obj)
返回对象的元素个数,整数没有元素个数
max/min(obj)
返回迭代对象中最大/最小元素
memoryview()
查看内存视图(有待研究)
open(filename,pattern,encoding)
用于打开文件
参数一:文件路径
参数二:打开模式(w,wb,w+,wb+,r,rb,r+,rb+,a,ab,a+,ab+,x,xb,x+,xb+)
pow(x,y[,z])
求x的y次幂,如果第三参数有输入则返回幂运算结果再求余运算后的结果
print()
打印信息
range(start,stop,step)
产生指定范围内顺序列表,参数一起始数,参数二终止数(包头不包尾),参数三步长
repr(obj)
将对象转换为解释器可解析对象
str(“字符串”) 输出字符串只有一对引号
repr(“字符串”) 输出字符串有两对引号
eval(repr(“abc”))=“abc”
eval(str(“abc”)) = abc 此时abc是一个变量名,如没有定义abc则会错误
reversed(iterable)
反转迭代对象元素的排序,需要转换出来使用
round(float)
返回一个四舍五入后的数,参数一需要四舍五入的浮点数,参数二是指定保留几位小数
注意:
round(偶数.5) =偶数本身
round(奇数.5) =奇数+1
round(偶数.55,1)=偶数.5
round(奇数.55,1)=奇数.6
slice(start,stop,step)
设置一个预先设置好的切片模型,提供给迭代对象切片时输入的参数
sorted(iterable)
list.sort() 对原列表进行降/升序排序,参数一用来进行排序比较的元素,参数二是reverse 是否倒序,无返回值
sorted()是内置函数,适用于所有迭代对象排序操作,返回一个已排序的列表
str(obj)
把对象转换成字符串
sum(iterable,append)
整个序列类型中的元素求和,参数一 可迭代对象,参数二总数后再加一个数
super()
初始化父类
type(obj)
返回对象的类型
zip(iterable,iterable)
从两个迭代对象中按顺序各取一元素组合成一个个元组并返回一个zip对象
*zip作用与之相反
@classmethod
普通类方法:普通类方法是需要先创建实例对象后用实例对象调用该方法,该方法自动将调用对象的本身传给方法
修饰符类方法:使用修饰符的类方法不需要创建实例对象也可以调用该类方法,该类方法自动传入类对象的本身cls
普通调用类方法:Aa().func() 这种调用和创建实例对象类似,只是没有把实例对象赋值给变量
类方法使用修饰符后可直接调用类方法:Aa.func() 这种调用等于直接使用类方法
@staticmethod
在类中该方法定义时无需传self参数,在外部无需实例化也可直接调用.
普通方法,类方法,静态方法的区别
1… 使用普通类方法时需要传递调用该类方法的实例对象(self)
… 使用类方法时需要传递调用该类方法的类对象(cls)
… 使用静态方法无需传递调用者本身即可直接调用
@property
使用property 装饰器代替了set() get()方法,使语法更简洁
property和 方法名.setter 配对使用,property装饰的方法名和方法名.setter 的方法名一致且property必放前面
--------------字符串处理函数---------------------
str.capitalize()
将首字母转换成大写,需要注意的是如果首字没有大写形式,则返回原字符串
str.casefold()
将字符串转换成小写,Unicode 编码中凡是有对应的小写形式的,都会转换
str.swapcase()
对字符串字母的大小写进行反转
str.title()
将字符串中每个“单词”首字母大写。其判断“单词”的依据则是基于空格和标点,所以应对英文撇好所有格或一些英文大写的简写时,会出错
str.lower()
将字符串转换成小写,其仅对 ASCII 编码的字母有效。
str.upper()
将字符串所有字母变为大写,会自动忽略不可转成大写的字符
str.isnumeric()
判断字符串是否数字(包含汉字数字一二三四)
str.isdigit()
判断字符串是否数字
str.isdecimal()
判断字符串是否十进制
str.isalpha()
判断字符串是否字母
str.isalnum()
判断字符串是否字母数字
------------------保留字(35) (keyword.kwlist)--------------------
import keyword
print(keyword.kwlist)
False … True … None
and … or … not … in … is
while …for … return … break … continue
if … elif … else
class …def … lambda … pass
try… except …finally … raise
from … import
global … nonlocal
as
assert
async
await
del
with
yield