python-常用内置函数

  • 2020 年 1 月 16 日
  • 筆記

内置函数

1.其他

  - len / open / id / range / type

2.输入输出

  - print / input 

3.强制转换

  - dict / list / tuple / int / str / bool / set

4.编码相关

  - chr : 将十进制数字转换成Unicode编码中的对应字符串

v = char(99)  print(v)  # c

  - ord : 根据字符在Unicode编码中找到其对应的十进制

con  = ord('中国')  print(con)  #  20013

5.数学相关

  - abs 绝对值

  - float 转换为浮点型(小数)

  - max 取最大值

  - min 取最小值

  - sum 求和

  - round 返回浮点数的四舍五入值

  - pow 求一个数的幂

a,b = divmod(103,5)  print(a,b)  # a=20  b=3   

  - divmod 两数相除的商和余数

a,b = divmod(103,5)  print(a,b)  # a=20  b=3   

   示例:

# 通过分页对数据进行展示  """  要求:      每页显示10条数据      让用户输入要查看的页面:页码  """  USER_LIST = []  for i in range(1,836):      temp = {'name':'啦啦啦-%s' %i,'email':'123%[email protected]' %i }      USER_LIST.append(temp)  # 数据总条数  total_count = len(USER_LIST)  # 每页显示10条  per_page_count= 10  # 总页码数  max_page_num,a = divmod(total_count,per_page_count)  if a>0:      max_page_num += 1  while True:      pager = int(input('要查看第几页:'))      if pager < 1 or pager > max_page_num:          print('页码不合法,必须是 1 ~ %s' %max_page_num )      else:          """          # 第1页:USER_LIST[0:10] -> 0123456789          # 第2页:USER_LIST[10:20]          # 第3页:USER_LIST[20:30]          """            start = (pager-1) * per_page_count          end = pager * per_page_count          data = USER_LIST[start:end]          for item in data:              print(item)

 6.进制转换相关

  - bin 将十进制数转换为二进制数

  - oct 将十进制数转换为八进制数

  - hex 将十进制数转换为十六进制数

  - int 将其他进制转换为十进制数

# 二进制转化成十进制  v1 = '0b1101'  result = int(v1,base=2)  print(result)    # 八进制转化成十进制  v1 = '0o1101'  result = int(v1,base=8)  print(result)    # 十六进制转化成十进制  v1 = '0x1101'  result = int(v1,base=16)  print(result)

 综合示例:

#请将 ip = "192.168.12.79" 中的每个十进制数转换成二进制:   # 0010100100001010010001010010001010010 -> 十进制的值  ip = '192.168.12.79'  list = []  for i in  ip.split('.'):      list.append(bin(int(i)))  con = ''  for item in list:      item = item.replace('0b', '')      if len(item) == 8:          con += item      elif len(item) < 8:          result = (8-len(item))*'0' + i          con += result  print(int(con,base = 2))

7.高级一点的内置函数

  - map 循环每个元素(第二个参数),然后让每个元素执行函数(第一个参数),将每个函数执行的结果保存到新的列表中,并返回

v1 = [11,22,33,44]  result = map(lambda x:x+100,v1)  print(list(result)) 

  - filter :过滤掉其中不需要的元素

#将列表里面的字符串取出    v1 = [11,22,33,'asd',44,'xf']    def func(x):      if type(x) == int:          return True      return False  result = filter(func,v1)  print(list(result))   # [11, 22, 33, 44]    #也可简写成如下:  result = filter(lambda x: True if type(x) == int else False ,v1)  print(list(result))    # 或  result = filter(lambda x: type(x) == int ,v1)  print(list(result))

  - reduce 将多个元素变成一个元素

import functools   #导入一个模块  v1 = ['wo','hao','e']    def func(x,y):      return x+y  result = functools.reduce(func,v1)  print(result)    result = functools.reduce(lambda x,y:x+y,v1)  print(result)

附录