美文网首页
2018-07-25Python(7)

2018-07-25Python(7)

作者: 棕色试剂瓶 | 来源:发表于2018-07-25 20:31 被阅读0次

python基础语法(7)

函数下

  1. lambda函数
    lambda函数有自己的作用域。

    代码示例:

    def makeAction(x):
    acts=[]
    for i in range(5):
    # i=0,1,2,3,4
    acts.append((lambda x,j=i:j**x))
    return acts

    fs=makeAction()
    print(fs0)

  2. map()
    代码示例:

     arr = [2,4,6,8,9]
     def func(x):
         return x*2+1
     res01 = map(func,arr)
     print(list(res01))  
    

    输出结果:

    [5,9,13,17,19]

    map()方法用来将list中的每一个元素都带到方法中执行,最后返回一个map地址,需要将其转化为list类型才能查看。

  3. reduce()
    代码示例:

     from functools import reduce
     arr = [2,4,6]
     res = reduce(lambda x,y:x + y,arr)
     print(res)
    

    输出结果:

    12

    reduce方法需要传入至少两个值,先将传入值的前两个进行函数运算,之后将运算结果与接下来的一个数进行运算,直到最后,得出一个结果。
    可以利用该方法进行累加运算。

  4. filter()

    代码示例:

     arr = ('张晓明','张山','王重阳','李娟')
     res = filter(lambda s:s[0] == '张' and len(s) == 2, arr)
     print(list(res))  
    

    输出结果:

张山

filter()可以看成是条件搜索,只会搜索元祖中满足条件的值,并将其拷贝出来。

  1. sorted()

    代码示例:

     users=[
         {'id':'008','user_name':'admin','user_password':'888','type':0},
         {'id':'002','user_name':'joke','user_password':'777','type':1},
         {'id':'001','user_name':'nose','user_password':'777','type':1}
     ]
     
     res=sorted(users,key=lambda user:user['id'],reverse=True)
     
     print(res)    
    

    sorted()方法中有三个变量,第一个是要排序的list,第二个是要排序的key值,第三个,是正序还是倒序。

  2. 函数的闭包
    为了系统的安全,当函数调用结束后能够被立即回收。

    代码示例:

     a = 1 # 全局变量(任何人都可以访问它,易被修改;耗内存)
     def func_out():
         a = 2
         def func_in():#访问父函数的变量用nonlocal,若不存在父函数则会报错
             nonlocal a
             a = a + 3
             print(a)
         return func_in  
    

模块

  1. 简介
    模块就是以.py结尾的Python文件。里面是python语句和python对象的定义。
    模块的作用是让代码变得更加条例清晰。
    把相关的代码归到一个模块中,剋让代码更易懂。
    模块中可以包含函数,类,变量。

  2. 两种带入模块的方式

    1. import + 模块相对地址
    2. form 模块相对地址 import 导入的方法名
  3. 导入模块是Python解析器的检索顺序

    1. 当前目录
    2. shell变量PYTHONPATH下的每个目录
    3. 查看默认路径(UNIX: /usr/local/lib/python/)模块搜索路径存储在 system 模块的 sys.path 变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。
  4. globals() 和 locals() 函数

    • globals()用来取到全局变量
    • locals()用来取到其父集函数中的变量

    两者返回的都是字典,所以能用kyes()函数摘取。

  5. reload()函数

    reload(module_name)用来重新导入一个模块,因为模块顶层的代码只会在导入模块的时候执行一次,如果想再次执行,可以用reload()函数重载该模块。

  6. init.py
    该文件用于模块的初始化,只在模块导入的时候执行一次。它的里面可以为空,主要用来标识当前文件夹是一个包。

相关文章

  • 2018-07-25Python(7)

    python基础语法(7) 函数下 lambda函数lambda函数有自己的作用域。代码示例:def makeAc...

  • 【第三周检视】2017.06.04—2017.06.10

    一、一周好习惯 早起7∕7,早睡7∕7,走步6∕7,冥想7∕7,八段锦5∕7,群里打卡7∕7,英语7∕7,读书群7...

  • 易效能时间管理8组小组会议第十周

    打卡统计:许丽钦 7/7;刘佼佼7/7;佟创5/7;万森7/7;乐天6/7;绍斌4/7;黎钦财7/7; 本周学习收...

  • 7/7

    我不能夸口说精神分析从来不做琐碎的事情,事实恰恰相反,精神分析所观察的材料常被其他科学讥讽为是琐碎、平凡和不重要的...

  • 7、7

    改变能改变的 接受不能改变的 颓废也是一种精神状态 乐于接受也不能不说是一种享受 哈哈、还年轻、怕什么

  • 7/7

    周五了,明天终于不用早起了。明天要去看爸妈,要去图书馆还书,要去新家。

  • 7/7

    无人与我立黄昏 无人问我粥可温 无人与我捻熄灯 无人共我书半生 无人陪我夜已深 无人与我把酒分 无人拭我相思泪 无...

  • 7/7

    数学 看到多元函数 直接懵逼 计算量好大 要多练,之前的也需要总结,全书第一轮还是很吃力。 专业课 越来越喜欢了 没道理

  • 7/7

    高情商并不是左右逢源、圆滑客套,而是温暖、真诚,换位思考。找台阶下,让人舒适体面。 不随意评价他人,发个自拍,他说...

  • 7/7

    因为疫情今年的高考在今天拉开了大幕,作为经历过两次高考的人。此刻内心毫无波澜,眼前的生活早已把我蹂躏的不再...

网友评论

      本文标题:2018-07-25Python(7)

      本文链接:https://www.haomeiwen.com/subject/ozummftx.html