千家信息网

介绍4个大神常用而你不常用的python函数

发表于:2024-11-21 作者:千家信息网编辑
千家信息网最后更新 2024年11月21日,介绍4个大神常用而你不常用的python函数https://mp.weixin.qq.com/s/C2nw4JShmj1FlLeDy0IeRA今天总共说下四个函数: assert ,map,filte
千家信息网最后更新 2024年11月21日介绍4个大神常用而你不常用的python函数

介绍4个大神常用而你不常用的python函数

https://mp.weixin.qq.com/s/C2nw4JShmj1FlLeDy0IeRA


今天总共说下四个函数: assert ,map,filter,reduce

assert

俗称 断言!就是说断言一件事,如果是真,程序继续进行;如果是假,则报错。




怎么用捏?

两种用法

  • assert

  • assert ,

    第一种

    def avg( marks ):
    assert
    len ( marks ) !=
    return sum( marks )/ len ( marks )

    mark1 = []
    print ( "Average of mark1:" ,avg(mark1))

    结果为

    AssertionError

    第二种

    def avg( marks ):
    assert
    len ( marks ) != , "List is empty."
    return sum( marks )/ len ( marks )

    mark2 = [
    55 , 88 , 78 , 90 , 79 ]
    print ( "Average of mark2:" ,avg(mark2))

    mark1 = []
    print ( "Average of mark1:" ,avg(mark1))

    结果为

    Average of mark2: 78.0
    AssertionError: List
    is empty .

    map

    很多时候,我们对一个list里的数据进行同一种操作,比如:

    items = [ 1 , 2 , 3 , 4 , 5 ]
    squared = []
    for i in item s:
    squared.
    append (i** 2 )



    这个时候,就可以用map操作,格式为:

    map(function_to_apply, list_input)



    具体操作为

    items = [ 1 , 2 , 3 , 4 , 5 ]
    squared = list(map(lambda x: x** 2 , items))

    当然list里可以放函数

    def multiply (x):
    return (x*x)
    def add (x):
    return (x+x)

    funcs = [multiply, add]
    for i in range( 5 ):
    value = list(map(
    lambda x: x(i), funcs))
    print(value)

    # Output:
    # [0, 0]
    # [1, 2]
    # [4, 4]
    # [9, 6]
    # [16, 8]

    当然也可以进行str2id操作

    a = [ '5' , '2' , '3' , '4' , '5' ]
    print ( list ( map ( int , a )))

    # [
    5 , 2 , 3 , 4 , 5 ]

    filter

    filter 函数就是对于给定的条件进行筛选,过滤。

    number_list = range (- 5 , 5 )
    less_than_zero =
    list ( filter (lambda x : x < , number_list))
    print (less_than_zero)

    # Outpu
    t: [- 5 , - 4 , - 3 , - 2 , - 1 ]

    这个可以用在神经网络中是否对部分网络进行fine-tune

    if self. args .fine_tune is False:
    parameters =
    filter (lambda p : p .requires_grad, model.parameters())
    else :
    parameters = model.parameters()

    reduce

    reduce 就是累计上次的结果,用在当前操作上。比如不用reduce是这样的

    product = 1
    list = [ 1 , 2 , 3 , 4 ]
    for num in list :
    product = product * num

    # product = 24



    用了之后

    from functools import reduce
    product = reduce((
    lambda x, y: x * y), [ 1 , 2 , 3 , 4 ])

    # Output: 24



    IELTS a bit



    colossal adj. 巨大的;广大的;庞大的

    deposit n. 存款 v. 将钱存入银行

函数 就是 结果 常用 时候 网络 大神 巨大 不用 存款 就是说 庞大 数据 条件 格式 神经 神经网络 程序 部分 银行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南通软件开发费用 典型数据库设计案例分析 电信网络安全法律法规 福建服务器虚拟化技术 服务器硬盘闪黄灯还能用吗 导入数据库三千万数据需要多久 携手合作共筑网络安全防线 波塞冬数据库 最早的分布式数据库 奉贤区第三方软件开发价格查询 小龙虾养殖网络技术 微信聚合聊天软件开发 portal 认证服务器 东莞尚梦互联网科技有限公司 网络技术训练室建设项目 u8数据库文件打开 成都计算机应用软件开发哪家好 众联互联网科技工作室 mysql 数据库 效率 滨州电力软件开发 末日觉醒个人服务器怎么保存 福建服务器虚拟化技术 福州市讯安网络技术 计算机网络技术考研有哪些专业 国家网络技术的发展 上海恒温农业信息系统数据库 交口县国家网络安全宣传 常州尖锋软件开发有限公司 岳塘县计算机网络技术 你对加强网络安全有什么好的建议
0