• day17 Pyhton学习 内置函数继续


    1. locals 本地作用域/局部作用域  会随着位置的改变而改变

    2.globals 全局作用域   永远不变,永远是全局

    3.complex:复数 实数(有理数和无理数)

    某一个数的平方是-1 ,那么这个数就是一个虚数的基础单位 j
    # 复数 = 实数+虚数 = a+bj
    # 选择题 :(对你的数学有要求的公司都会考)
        # 复数不能比较大小
        # 共轭复数 : a+bj 和 a-bj是一对共轭复数
        # a+bj 和 a+bJ都是复数

    4.bin oct hex

    # a = 19
    # # 0 1 2 3 4 5 6 7 8 9 A B C D E F 10
    # # 256 十进制
    # print(bin(a))  # 0b100000000 0b代表二进制,100000000 = 256   
    # print(oct(a))    # 0o400 0o代表八进制,400 = 256
    # print(hex(a))    #十六进制

    5.abs 求绝对值,正数的绝对值是正数,负数的绝对值也是正数

    6.divmod 商余函数

    print(divmod(2520,25))#(100, 20)
    print(divmod(35,25))#(1, 10)
    print(divmod(8,3))#(2, 2)

    7.round(小数,保留几位小数)    小数精确

    ret = round(2.3258358)
    print(ret)#2
    ret = round(2.3253358,2)
    print(ret)#2.33
    ret = round(2.3253358,3)
    print(ret)#2.325
    ret = round(0.5)
    print(ret)#0

    8.pow(x,y,z=1) 幂运算/幂余运算  x的y次方%2

    print(pow(2,3))#8
    print(pow(3,2))#9
    print(pow(5,3,2))#1
    print(pow(4,2,2))#0
    print(pow(4,3,2))#0

    9.sum(可迭代的数字集,start),start从哪个数开始加

    print(sum((1,2,3,4)))
    print(sum([1,2,3,4]))
    print(sum(range(10)))
    print(sum((i**2 for i in range(5))))
    print(sum((1,2,3,4)))
    print(sum((1,2,3,4),10))
    print(sum((1,2,3,4),30))

    10.min/max(iterable/*args,key) key是一个函数的内存地址,key做的事情就是根据你对每一项数据大小的需求来排序

    print(min(1,2,3))
    print(min((1,2,3)))
    print(min((1,2,3),(4,5,6)))
    print(min((7,2,3),(4,5,6)))
    def func(n):   # n = 2,3,4,7
        return n%6 # 2,3,4,1
    ret = min(2,3,4,7,key = func)
    print(ret) #7
    l = [{'name1':10},{'name2':500}]
    def func(dic):
        for k in dic:
            return dic[k]
    # def max(iter,key = None):#自己定义的max函数
    #     ret=0
    #     max_value = 0
    #     if key:
    #         for i in iter :
    #             if key(i)>max_value:#key(i)是股票的价格
    #                 max_value = key(i)
    #                 ret = i
    #     return ret
    # def min(iter,key = None):#自己定义的min函数
    #     ret=0
    #     min_value=0
    #     if key:
    #         for i in iter:
    #             if min_value==0:
    #                 min_value=key(i)
    #                 ret=i
    #             elif min_value>key(i):
    #                 min_value=key(i)
    #                 ret=i
    #     return ret
    print(max(l,key = func))
    print(min(l,key = func))
    # l中的每一项都会作为参数传给func
    # max和min的求值会根据func的返回值来排序

    11.reversed(list/tuple)  #返回一个迭代器,为了节省内存

    l = [1,2]
    l.reverse()
    print(l)
    
    ret = reversed([1,2,3])  # iterator
    print(list(ret))
    # reverse是在原基础上修改 : 2000项的列表 不会产生额外的内存占用
    # reversed不修改原基础 : 不直接返回列表而返回迭代器,为了不占用更多的内存

    12. slice  切片

    l = [1,2,3,4,5,]#[2, 3, 4]
    print(l[1:4])
    
    ret = slice(1,4)# [2, 3, 4]
    print(l[ret])

    13 . format  与具体数据相关,用于计算各种小数,精算等

    # 字符串
    print(format('test', '<20')) # 左对⻬
    print(format('test', '>20')) # 右对⻬
    print(format('test', '^20')) # 居中
    # 数值
    print(format(3, 'b')) # ⼆进制
    print(format(97, 'c')) # 转换成unicode字符
    print(format(11, 'd')) # ⼗进制
    print(format(11, 'o')) # ⼋进制
    print(format(11, 'x')) # ⼗六进制(⼩写字⺟)
    print(format(11, 'X')) # ⼗六进制(⼤写字⺟)
    print(format(11, 'n')) # 和d⼀样
    print(format(11)) # 和d⼀样
    # 浮点数
    print(format(123456789, 'e')) # 科学计数法. 默认保留6位⼩数
    print(format(123456789, '0.2e')) # 科学计数法. 保留2位⼩数(⼩写)
    print(format(123456789, '0.2E')) # 科学计数法. 保留2位⼩数(⼤写)
    print(format(1.23456789, 'f')) # ⼩数点计数法. 保留6位⼩数
    print(format(1.23456789, '0.2f')) # ⼩数点计数法. 保留2位⼩数
    print(format(1.23456789, '0.10f')) # ⼩数点计数法. 保留10位⼩数
    print(format(1.23456789e+10000, 'F')) # ⼩数点计数法.

    14. bytes 字节

    # str --> bytes
    # print('abc'.encode('utf-8'))
    # print('你好'.encode('utf-8'))
    # bytes --> str
    # b = b'xe4xbdxa0xe5xa5xbd'
    # print(b.decode('utf-8'))

    15. bytearray 把一个字符串编程一个字节数组,较长的字符串的修改节省内存,修改行为必须依靠编码

    ret = bytearray('abc'*30,encoding='utf-8')  # 字节数组
    print(ret)#bytearray(b'abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'
    ret[0] = 102   # asc码  65A 97abcdef 你好 您好
    print(ret)#bytearray(b'fbcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'

    16.memoryview 查看bytes在内存中的情况

    ret = memoryview(bytes('hello,eva',encoding='utf-8'))
    print(list(ret[:10]))

    17.ord/chr 字符和编码之间的转换

    # print(ord('a'))
    # print(chr(97))

    18.repr() 打印的时候输出这个变量的数据类型

    a = 1
    b = '1'
    print(repr(a),repr(b))#1  '1'
    print(a)#1
    print(b)#1

    19.len 计算长度

    a="d3d3dd"
    print(len(a))#6
  • 相关阅读:
    程序员副业那些事:聊聊出书和录视频
    跳槽时,不敢要高工资也会对候选人不利
    SQL 查询今天、昨天、7天内、30天的数据
    jquery table按列名称排序
    Asp.Net微信js分享
    表格插件BootStrap-Table使用教程
    ASP.NET中IOC容器Autofac(依赖注入DI 控制反转IOC)
    IIS添加MIME类型.woff/.svg/.woff2/.eot/.otf.ttf
    div垂直居中水平居中css
    Asp.Net报https请求报传输流收到意外的 EOF 或 0 个字节
  • 原文地址:https://www.cnblogs.com/pythonz/p/9936993.html
Copyright © 2020-2023  润新知