刷题过程中琐碎常用函数
-
sort(cmp=None,key=None,reverse=False)
sorted(iterable,cmp=None,key=None,reverse=False)sort是应用在list上的方法,是在原地修改,返回值为none
sorted可以对所有可迭代的对象进行排序操作,当值是字符串时,默认以asc码对照比较
reverse默认是False(升序)
cmp–比较函数,比较什么由参数key决定,例如:cmp(e1, e2) 是具有两个参数的比较函数,返回值:负数(e1 < e2);0(e1 == e2);正数( e1 > e2) -
reverse()
reversed()
reverse是用在list上,是原地修改,返回值为none
reversed是返回一个序列的迭代器,需要循环遍历,返回值是一个迭代器
-max(x,y,z,key=)
max函数默认是取其最大值,后面的key会给其一个函数
-
abs(num)
返回的是num的绝对值,num是整数则返回整数,是浮点数则返回浮点数
其他进制则转换为十进制的绝对值
num只能为数字 -
**type()**函数查看类型
-
**globals()**查看当前作用域内的所有全局变量和值的字典
-
locals() 查看当前作用域内的所有局部变量和值的字典
-
int(num,base=)
默认是十进制,将num向下取整
base为空时,输入类型为 数字;base存在时,输入类型为 字符串。如果进制为十进制以上也可以是‘A’等
。否则报错 -
zip(a,b):将两边的列表 打包为元组的列表,py3为了节省空间返回的是一个对象,需要用list转换
加入c=zip(a,b)
那么zip(*c)就是解压为二维矩阵式 -
map(function,iterable)
第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表 -
index(x,start,end) 返回要查询的值第一次出现的索引,如果不存在该数就会报错
-
enumerate(sequence, [start=0])
将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,例如
enumerate([1,2,3,4])则返回[(0,1),(1,2),(2,3),(3,4)] -
print(*objects, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)
print默认多个数据时是空格间隔,sep可以设置打印之间的间隔,end可以设置结尾
flush设置为true时可以强制刷新流
end默认是换行,可以设置为空格就不换行 -
filter(function,iterable)将一个可迭代对象中的元素判断是否符合function函数,返回一个包含所有符合function函数的列表
-
**eval()**返回表达式的结果,目前遇到的题目基本都是将一个计算或者函数写成字符串,然后去掉字符串运行就好
-
reduce() 函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。目前遇到的题目基本就是将一个序列中的元素按照按照函数要求累计加或者乘等
-
format() 使用方法是str.format() 使用{}和:代替%
-
isinstance(a,obj) 判断左边的数据是否是右边的类型,返回true/false
(重要)字符串常用函数
字符串操作和文件写入操作题常考
swapcase(),将字符串的大写变小写,小写变大写
endwith(suffix,start,end)/startwith(suffix,start,end) 判断在指定长度范围内,是否是指定元素。依据判断返回true/false
partition() 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串
join(sequence) str.join(sequence) ,str为连接符,如果这个可迭代元素包含任何不是字符串的值,join()函数就会抛出TypeError。join常与split和partition等函数连续使用
split(seq,num) seq为分割符,默认为空格。num为分割的次数 str.split(seq,num)
find() 返回第一次出现的位置,如果没有就返回-1
rindex() 返回最后一次出现的第一个字符的下标,如果没有该字符会报异常
ljust(num,seq) 左对齐,占num位,默认以空格站位,可以指定seq占位符
ord() 将ascll字符转化为十进制数值,
char() 将十进制数值转化为对应的ascll字符
isalnum() 判断是否全为数字和字母
isalpha() 判断是否全为字母
isdigit() 判断是否全为数字
strip() 删除删除开头或是结尾的字符,不能删除中间部分的字符。默认是空格
lstrip()/rstrip() 删除字符串中左侧/右侧的所有指定字符,每个字符单独算。直到遇到非指定字符
replace(a,b) 将字符串的所有a换成b
random常用函数
-
random():在[0,1)范围,返回一个浮点数
-
uniform(a,b):在[a,b]范围内返回一个浮点数,前后大小可以颠倒,不影响使用,即假如a<b,可以写成 uniform(a,b)也可以uniform(b,a)
-
randint(a,b):用于生成a~b之间的整数n: a <= n <= b
与random.uniform()不同的是,a必须大于b,不能小于b,否则会报错 -
randrange(start,end,step): 范围是依据前后范围及步长,取得整数
-
choice(sequence):random.choice从序列中获取一个随机元素,其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。
choice是取的元素,randrange是整数 -
shuffle(list) :传入一个列表,打乱顺序,注意这里是在原列表上自修改,如果复制给一个变量,返回值为none
-
sample(sequence,num):从序列中获取指定长度的列表片段,这个不影响原序列
random与uniform返回的都是浮点数 choice(sequence)是从一个序列中随即获取一个元素,序列可以是任意的
shuffle(list)是接受并原地修改一个列表,返回值为none
sample(sequence,num)是从一个序列获取指定长的片段,都以列表形式返回**
datetime常用函数
date(year,month,day)函数 将三个数值转化为日期
date.today() 显示今天的日期
**date.weekday(date)**显示date这天是周几-1,例如是周一返回0,周二返回1,date必须为日期类型
date.isweekday(date),显示今天是周几,周一就是1,周二就是2 与上一个略有区别
date.datetime() 将输入的数值转化为日期-时间,如果
time常用函数
time() 返回时间戳,不是时间
localtime() 返回一个时间元组
mktime() 将时间元组转化为时间戳
strftime() 将时间元组转化为字符串格式
time.strftime(’%Y-%m-%d %H:%M:%S’, localtime) ,前面一个参数是要转换成的形式,后面是时间元组
strpftime() 将字符串格式 转化为 时间元组
time.strftime(strftime, ‘%Y-%m-%d %H:%M:%S’)
asctime() print(time.asctime(time.localtime())) 将时间元组转化为时间
ctime() print(time.ctime(time.time())) 将时间戳转化为时间
os常用函数
os.getcwd() # 返回程序的当前路径
os.chdir(path) # 修改当前程序操作的路径
os.mkdir(dirname) # 在当前路径下,建立一个子文件夹。注意:文件已存在时会报错。
os.rmdir(path) 其参数path 为要删除的目录的路径。
os.rename() #修改路径下文件的名字。
os.remove() #移除文件
欢迎补充,如有问题还请不吝赐教