Python常用基础知识笔记
2. Python常用内置函数
2.1 enumerate()函数
将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标。
>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> print(enumerate(seasons))
<enumerate object at 0x0000025BA2B57F40>
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>>
2.2 filter()函数
参考文档:https://www.runoob.com/python3/python3-func-filter.html
filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。
该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
def is_odd(n):
return n % 2 == 1
tmplist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# 上面4行还可以写成lambda表达式
# tmplist = filter(lambda n: n % 2 == 1, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
newlist = list(tmplist)
print(newlist) # [1, 3, 5, 7, 9]
2.3 lambda函数
参考链接:https://zhuanlan.zhihu.com/p/80960485?utm_source=wechat_timeline
简单来说,lambda函数的使用方式如下:
lambda 参数列表(规则同函数中的参数列表,故可以很复杂): 在函数中可以通过return返回的单行表达式lambda函数从本质上来说还是个函数,只不过是匿名函数,经过上面一行的运行,其实得到的就是这个匿名函数的返回值,跟调用一个函数是一样的。根据返回的内容不同,可以把它赋给一个变量,也可以作为函数的参数传递给函数。当然,lambda还有很多高级用法,如//TODO
tmplist = filter(lambda n: n % 2 == 1, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
newlist = list(tmplist)
print(newlist) # [1, 3, 5, 7, 9]
2.4 format()函数
参考链接:https://www.runoob.com/python/att-string-format.html
是比较强大的字符串格式化函数。比较常用的用法是用
{}来当占位符。
print('Copy {} to {} successfully!'.format(file_path, new_path))
2.5 type()函数
参考链接:https://www.runoob.com/python/python-func-type.html
返回对象的类型
type(obejct)
2.6 eval()函数
参考链接:https://www.runoob.com/python/python-func-eval.html
补充:ast.literal_eval() :https://www.jb51.net/article/128410.htm 、https://www.jb51.net/article/168494.htm
执行一个字符串表达式,并返回表达式的值。
str=" ['1709020230', '1707030416', '0', '0', '0'] "
print(type(str)) # <class 'str'>
str_list =eval(str)
print(type(str_list)) # <class 'list'>
2.7 join()函数
参考链接:Python3 join()方法 | 菜鸟教程 (runoob.com)
将序列中的元素以指定的字符连接生成一个新的字符串。可以用来将列表转为字符串
s1 = "-"
s2 = ""
seq = ("r", "u", "n", "o", "o", "b") # 字符串序列
print(s1.join(seq)) # r-u-n-o-o-b
print(s2.join(seq)) # runoob
2.8 zip()函数
2.9 进制相关
2.9.1 ord()函数
返回一字符对应的ASCII表中的十进制数
>>>ord('a')
97
>>> ord('b')
98
>>> ord('c')
99
2.9.2 bin()函数
返回一个十进制整数的二进制字符串
>>>bin(10)
'0b1010'
>>> bin(20)
'0b10100'
2.9.3 oct()函数
返回一个十进制整数的8进制字符串
>>> oct(10)
'0o12'
>>> oct(20)
'0o24'
>>> oct(15)
'0o17'
2.9.4 hex()函数
返回一个十进制整数的16进制字符串
>>>hex(255)
'0xff'
>>> hex(-42)
'-0x2a'
>>> hex(1L)
'0x1L'
>>> hex(12)
'0xc'
2.9.5 int()函数
将一个字符串或数字转换为十进制整型。
>>>int() # 不传入参数时,得到结果0
0
>>> int(3)
3
>>> int(3.6)
3
>>> int('12',16) # 如果是带参数base的话,12要以字符串的形式进行输入,12是16进制表示中的0x12
18
>>> int('0xa',16)
10
>>> int('10',8)
8
2.10 count()函数
参考链接:Python count() 方法 | 菜鸟教程 (runoob.com)
统计字符串中某个字符或子字符串的个数
str.count('a')
str.count('xiao')
str.count('1', 4, 10)
2.11 reduce()函数
参考链接:
将两个参数的 function 从左至右积累地应用到 iterable 的条目
from functools import reduce
sum = reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) # ((((1+2)+3)+4)+5) 15
创作不易,喜欢的话加个关注点个赞,❤谢谢谢谢❤
8万+

被折叠的 条评论
为什么被折叠?



