Welcome to kimi's blog

python内置函数

内置函数

常见内置函数

1.map() 映射
	map函数也是python中的一个内置函数,map在这里的意思是映射的意思,会根据提供的函数对指定序列做映射。map函数会返回一个迭代器,如果要转换为列表,可以使用 list() 来转换
	map(function,iterable),  function>>>: 函数  ,iterable>>>: 可遍历对象
	
    l1 = [11,22,33,44,55]
    #def function(a):
    #    return a + 1
    result = map(lambda x :x+1,l1)
    print(list(result))   # [12, 23, 34, 45, 56]
    # print(dict(result))  # {}
    # print(tuple(result))  # ()
    """ 一般用列表来接收"""

2.max()\min()

eg1:
    l1 = [11, 21, 2, 3, 2, 1, 2, 3, 2, 3, 2, 3, 2324, 242, 432, 43246, 456, 46, 345, 55345]
    result = max(l1)
    print(result)  # 55345

eg2:
    d1 = {
        'kiki': 999,
        'kimi': 1234,
        'jenny': 3456,
        'rose': 888
    }
    方式-:
    def function(a):
        return d1.get(a)
    res = max(d1,key=function)
    print(res)  # jenny
    
    方式二:
    res = max(d1,key=lambda k:d1.get(k))
    print(res)  # jenny
    
	"""
        A-Z: 65-90
        a-z:97-122
                        """


3.reduce
   """ reduce  传多个值  返回一个值 """
    from functools import reduce
    l1 = [11, 22, 33, 44, 55, 66]
    result = reduce(lambda a,b:a*b,l1)
    print(result)  # 1275523920
    
    """步骤:
    1.导入 reduce
    2.获取列表
    3.获得a=11,b=22 并相乘得242,再赋值给a
    4,a=242,或者b=33,a,b相乘得7986再赋值给a
    依次循环,直至结束"""

重要内置函数

1.zip() 拉链

zip()接受一系列可迭代的对象作为参数,将对象中的对应的元素打包成以一个个tuple,zip()函数返回iterable(可迭代对象)

	""" 传入的参数相等,则返回的list的长度和参数长度相同"""
eg:
    l1 = [11, 22, 33, 44, 55, 66]
    l2 = ['kiki', 'kimi', 'classmate', 'roommate', 'mimi', 'baidu']
    l3 = [1, 2, 3, 4, 5, 6]
    result = zip(l1,l2,l3)
    print(list(result))  # [(11, 'kiki', 1), (22, 'kimi', 2), (33, 'classmate', 3), (44, 'roommate', 4), (55, 'mimi', 5), (66, 'baidu', 6)]
	print(list(result))  # [] 第一次迭代遍历完了,第二次遍历只能返回空集
	
	

    """ 传入的参数不相等,则返回的list的长度和参数长度最短的对象相同"""
eg:
    l1 = [11, 22, 33, ]
    l2 = ['kiki', 'kimi', 'classmate', 'roommate']
    l3 = [1, 2, 3, 4, 5, 6]
    result = zip(l1,l2,l3)
    print(list(result))  # [(11, 'kiki', 1), (22, 'kimi', 2), (33, 'classmate', 3)]
    
    

2.filter() 过滤

​ 基本语法

filter(function or None, iterable) --> filter object
function:函数 作用是对iterable中的每个元素判断是否符合特定条件
None:不调用任何函数,只对可迭代对象中的元素本身判断真假,保留为真的元素
iterable:可迭代对象

​ 代码实现:


eg:
    l1 =[11,22,33,44,55,66,77,88]
    result = filter(lambda x:x>40,l1) 
    print(list(result))  # 结果得出都是大于40的数据列表[44, 55, 66, 77, 88]

eg:
    l1 =[11,0,33,44,-5,66,77,-88]
    result = filter(lambda x:x>40,l1)
    print(list(result))  # 返回的是[11, 33, 44, -5, 66, 77, -88]  0默认是False,所有帅选过程中进行了过滤

    在filter函数定义中提到,filter函数中参数None表示不调用任何函数,只对可迭代对象中的元素本身判断真假,保留为真的元素,

""" for和列表生成式也同样可以实现 """
 

3.sorted 排序

sort排序
sorted()排序  默认升序

eg:
    l1 = [22, 6, 335, 89, 53, 236, 9953, 12, 45]
    result = sorted(l1)
    print(result)  # [6, 12, 22, 45, 53, 89, 236, 335, 9953]  默认升序

4.map() max() min()

1.map() 映射
	map函数也是python中的一个内置函数,map在这里的意思是映射的意思,会根据提供的函数对指定序列做映射。map函数会返回一个迭代器,如果要转换为列表,可以使用 list() 来转换
	map(function,iterable),  function>>>: 函数  ,iterable>>>: 可遍历对象
	
    l1 = [11,22,33,44,55]
    #def function(a):
    #    return a + 1
    result = map(lambda x :x+1,l1)
    print(list(result))   # [12, 23, 34, 45, 56]
    # print(dict(result))  # {}
    # print(tuple(result))  # ()
    """ 一般用列表来接收"""

2.max()\min()  

eg1:
    l1 = [11, 21, 2, 3, 2, 1, 2, 3, 2, 3, 2, 3, 2324, 242, 432, 43246, 456, 46, 345, 55345]
    result = max(l1)
    print(result)  # 55345

eg2:
        d1 = {
            'kiki': 999,
            'kimi': 1234,
            'jenny': 3456,
            'rose': 888 }
    方式一:
        def function(a):
            return d1.get(a)
        res = max(d1,key=function)
        print(res)  # jenny
    
    方式二:
        res = max(d1,key=lambda k:d1.get(k))
        print(res)  # jenny
    
	"""
        A-Z: 65-90
        a-z:97-122
                        """


5.reduce()

reduce
   """ reduce  传多个值  返回一个值 """
    from functools import reduce
    l1 = [11, 22, 33, 44, 55, 66]
    result = reduce(lambda a,b:a*b,l1)
    print(result)  # 1275523920
    
    """步骤:
    1.导入 reduce
    2.获取列表
    3.获得a=11,b=22 并相乘得242,再赋值给a
    4,a=242,或者b=33,a,b相乘得7986再赋值给a
    依次循环,直至结束"""

常用内置函数

1.abs() 绝对值

print(abs(-110))  # 110  取绝对值
print(abs(56))  # 56   取绝对值

2.all() 全与 所有数据值对应的布尔值为True结果为是True,否则返回False

print(all([0,1,2,3,4,67]))  # False  0默认是False
print(all([1,5,7,True]))  # True

3.any() 全或 所有数据之对应的布尔值,有一个为True结果为True,否则返回False

print(any([0, None, '', 1]))  # True
print(any([0, '', 1]))  # True
print(any([0,False,'',[],{}]))  # False

4.bin() oct() hex() int() bool()

print(bin(100))  # 0b1100100
print(oct(100))  # 0o144
print(hex(100))  # 0x64

5.bytes() 编码

s1 = '时间太快了,明天又是周末了'
print(s1.encode('utf8'))  # b'\xe6\x97\xb6\xe9\x97\xb4\xe5\xa4\xaa\.....
print(bytes(s1,'utf8'))  # b'\xe6\x97\xb6\xe9\x97\xb4\xe5\xa4\xaa\xe5\xbf\x.....

6.callable() 判断一个名字是否可以加括号调用

name = 'kiki'
def index():
    print('from index')
print(callable(name))  # False
print(callable(index))  # True

7.chr() ord() 基于ASCll码表做数字与字母的转换

print(chr(65))  # A
print(chr(90))  # Z
print(ord('A'))  #65
print(ord('h'))  # 104

8.dir() 查看对象内置方法 返回括号内对象能够调用的名字

print(dir('hello'))  # ['__add__', '__class__', '__contains__', '__delattr__', '__dir__',.......

9.divmod() 整除和取余 返回是元组 第一个数据为商,第二个数据是是余数,

result = divmod(100,2)
print(result)  # (50,0) 因为100能被2整除

result = divmod(99,2)
print(result)  #(49,1)  99除于2得整数49,余数为1

"""
总数          每页展示得数据        总页码
100              10                10
99               10               10
102              10               11
"""
page_num,more = divmod(9999,20)
print(divmod(99,10))  # (9, 9)
if more:
    page_num += 1
print('总页码为:',page_num)  # 总页码为: 500

10.enumerate() 枚举


l1 = 'hello world'
for i,k in enumerate(l1):
    print((i, k),end='')  # (0, 'h')(1, 'e')(2, 'l')(3, 'l')(4, 'o')(5, ' ')(6, 'w')(7, 'o')(8, 'r')(9, 'l')(10, 'd')


for a,b in enumerate(l1,start=100):
    print(a,b)  # 101 e  102 l.......
    
    
dict1 = {i:j for i,j in enumerate('happy')}
print(dict1)  # {0: 'h', 1: 'a', 2: 'p', 3: 'p', 4: 'y'}

12.hash() 哈希加密

print(hash('kiki'))  # 哈希加密
""" 
第一次加密:4037269258047698454
第二次加密:7907564079560707150
每次加密都不一样
"""

13.id() input() isinstance()

1.id()
    l1 = 12
    print(id(l1))  # 140712622557184
2.input()
	iuput函数作用:接收来自用户得输入
	input返回值类型:输入值的类型为str
	值的存储:使用=对输入的值进行存储	
3.isinstance()
    l1 =1
    res= isinstance(l1,int)
    print(res)  # True


14.open()

open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
open() 是python的内置函数,可以打开文件对其进行操作

 Character Meaning
    'r'       open for reading (default) 打开可读文件
    'w'       open for writing, truncating the file first da
    'x'       create a new file and open it for writing
    'a'       open for writing, appending to the end of the file if it exists
    'b'       binary mode
    't'       text mode (default)
    '+'       open a disk file for updating (reading and writing)
    'U'       universal newline mode (deprecated)

15.pow() 幂指数

print(pow(2,3))  # 8
print(pow(2,4))  # 16
print(pow(2,9))  # 512

16.range() xrange()

print(range(100))  # range(0, 100)

17.round() 四舍五入取整

print(round(67.3))  # 67
print(round(45.8))  # 46

18.sum()

print(sum([12,34,56,67,89]))  # 258

19.eval\exec

eval('python代码字符版') 
exec('代码字符版',{},变量)
# 执行结果,执行代码,产生属性放到字典里,存到变量中。
# 这个变量存的就是这个代码的名称空间(字典类型)
posted @ 2022-10-14 19:57  魔女宅急便  阅读(39)  评论(0)    收藏  举报
Title