python学习 day10打卡 函数的进阶】的更多相关文章

本节主要内容: 1.函数参数--动态参数 2.名称空间,局部名称空间,全局名称空间,作用域,加载顺序. 3.函数的嵌套 4.gloabal,nonlocal关键字 一.函数参数--动态传参 形参的第三种:动态参数 动态参数分成两种: 1.动态接收位置参数 def chi(*food): print("我要吃", food) chi("⼤米饭", "小米饭") 结果: 我要吃 ('⼤米饭', '小米饭') # 多个参数传递进去. 收到的内容是元组t…
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多捏. 基本定制型 代码如下: C.__init__(self[, arg1, ...]) 构造器(带一些可选的参数) C.__new__(self[, arg1, ...]) 构造器(带一些可选的参数):通常用在设置不变数据类型的子类. C.__del__(self) 解构器 C.__str__(self)…
1 语法 my_lambda = lambda arg1, arg2 : arg1 + arg2 + 1 arg1.arg2:参数 arg1 + arg2 + 1 :表达式 2 描述 匿名函数不需要return来返回值,表达式本身结果就是返回值. lambda 仅简洁了代码,并不会提高程序运行效率 如果可以用 for...in...if 来完成的,最好不使用匿名函数lambda 使用lambda时,函数内不要包含循环.嵌套:如果存在,则最好使用def函数来完成,这样的代码可读性和复用性均较高 l…
python的内建排序函数有 sort.sorted两个. 1.基础的序列升序排序直接调用sorted()方法即可 ls = list([5, 2, 3, 1, 4]) new_ls = sorted(ls)或者使用ls.sort()即可,直接将ls改变 print(new_ls) 需要注意:sort()方法仅定义在list中,而sorted()方法对所有的可迭代序列都有效 并且针对任何的可迭代序列,sorted()都是返回一个list, print(sorted({8: 'D', 2: 'B'…
稍微学过其他编程语言的人都应该了解函数的概念.在这里就不做过多的介绍. Python内置了很多有用的函数,我们可以也直接调用. 可以直接从Python的官方网站查看文档: http://docs.python.org/2/library/functions.html 类似于之前在介绍List的range() ,用于list切片介绍的zip()函数等等.都是python内置函数库提供的API. 但是python的有些内置函数需要引用包(类型于C语言的头文件).在程序开头引用包,举个例子: impo…
内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函数相比于用户自己定义函数实现相同功能,在执行效率和对内存的分配和使用上是要更加理想的.所以理解和熟练运用python中的内置函数,不仅可以增强代码的可读性,同时也可以提升代码的品质.下面对内置函数的使用方法进行分类介绍,以方便归纳理解. 一.查看作用域中变量相关 global () 功能:查看全局作…
一.循环结构 python中提供了for循环和while循环两种操作,没有do……while语句. 1.for循环: 与其他语言中for循环的常见的写法如for (int i=0;i<10;i++)不同,python中的for循环更加类似于foreach结构: ##举例:遍历输出一个单词的所有字母for letter in 'Python': print('当前字母 :'+letter) 对比: string str = "Python"; foreach(char c in s…
满足以下两点中任意一点,即为高阶函数: 1.函数接收一个或多个函数作为参数 2.函数返回一个函数 1 描述 用函数和可迭代对象中每一个元素作为参数,计算出新的迭代对象 map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表. 2 语法 map(function, sequence[, sequence, ...]) function:函数 sequence:一个或多个序…
今日学习内容: 1.什么是函数 :函数就是一个含有特定功能的变量,一个解决某问题的工具 函数的定义:通过关键字def + 功能名字():代码体(根据需求撰写代码逻辑) 2.为什么要用函数:可以复用:函数功能定义好了之后,根据主程序的需要随时调用该函数,需要一次就调用一次,而函数只有一个.让主程序代码结构更加清晰:便于维护,变更某功能只需要变更一次. 3.函数的四部分:函数名 调用函数的依据 函数体:完成功能的代码块 返回值:执行函数体后,一定会有一个结果,可以通过return将其值返回给外界.-…
本节主要内容: 内置函数: 内置函数就是python给你提供的.拿来直接用的函数,比如print,input等等.截止到python版本3.6.2 python一共提供了68个内置函数.他们就是python 直接提供给我们的.有一些我们已经用过了.有一些还没有用过.还有一些还没有用过.还有一些需要学完了面向对象才能继续学习的.今天我们就认识 一下python的内置函数. https://www.processon.com/mindmap/5bdbfc4be4b0cc9e7ea65a49中的思维导…
本节内容: 1.什么是函数 2.函数定义,函数名,函数体及函数的调用 3.函数的返回值 4.函数的参数 一.什么是函数 函数:对代码块和功能的封装和定义 定义一个事情或者功能.等到需要的时候直接去用,那么这里定义的东西就是函数. 二.函数的定义,函数名,函数体以及函数的调用 我们使用def关键字来定义函数,函数的定义语法如下: def 函数名(): 函数体 这里的函数名的命名规则与使用和变量的基本一样. 函数体: 就是函数被执行之后要执行的代码 函数的调用:使用函数名就可以调用函数,写法:函数名…
函数Ⅱ(参数&作用域) 知识小结: py2与py3的区别 逻辑运算()>not>and>or 字符串翻转切片翻转 is与==区别 git相关 数据类型判断 操作系统:centos,redhat 数据类型的操作方法 深浅拷贝 大文件(日志文件)读取 一行写成99乘法表 1.参数 实际参数可以是任何值 函数没有返回值,默认返回None 函数内部执行时,遇到return就终止运行 return可以返回任何数据类型的值,多个值时返回元组 # enconding: utf-8def tes…
迭代器和生成器的概念 迭代器 对于list.string.tuple.dict等这些容器对象,使用for循环遍历是很方便的.在后台for语句对容器对象调用iter()函数.iter()是python内置函数. iter()函数会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内的元素.next()也是python内置函数.在没有后续元素时,next()会抛出一个StopIteration异常,通知for语句循环结束. 迭代器是用来帮助我们记录每次迭代访问到的位置,当我们对迭代器…
本节主要内容: 1.lambda匿名函数 2.sorted() 3.filter() 4.map() 5.递归函数 6.二分法 一.lambda匿名函数 为了解决一些简单的需求而设计的一句话函数 # 计算n的n次方 def func(n): return n**n print(func(10)) f = lambda n: n**n print(f(10)) lambda表示的是匿名函数.不需要用def来声明,一句话就可以声明出一个函数 语法: 函数名 = lambda 参数 : 返回值 注意:…
局部变量与全局变量下面代码中,old_price,rite为全局变量,final_price为局部变量 globals() 声明全局变量,在函数内可修改函数外的变量 内嵌函数:函数当中嵌套函数 闭包:闭包条件 1 在一个外函数中定义了一个内函数. 2 内函数里运用了外函数的临时变量. 3 并且外函数的返回值是内函数的引用.…
上篇我们已经了解了一些面向对象的基础知识,本次就了解下面向对象的一些进阶知识(虽然我也不知道有什么卵用). 静态方法 静态方法是一种普通函数,就位于类定义的命名空间中,它不会对任何实例类型进行操作.使用装饰器@staticmethod定义静态方法.类对象和实例都可以调用静态方法: 说了那么多,估计会有些懵逼,咱们还是直接上代码看下静态方法怎么使用吧! 1.按照正常逻辑编写代码并加上@staticmethod定义静态方法eat: class People(object): def __init__…
今天在看<Beginning Linux Programming>中的进程相关部分,讲到Linux几个进程相关的系统函数: system , exec , fork ,wait . Python的 os 模块实现了对应的函数封装了这些系统调用: os.system , os.exec , os.fork , os.wait,本文和大家分享的就是这部分内容,希望通过本文的分享对大家学习python http://www.maiziedu.com/course/python/有所帮助. 1. os…
今天学习的主要内容是: 一,小数据池 代码块的概念 python程序是由代码块构成的,一个代码块的文本作为python程序执行的单元. 代码块:一个模块,一个函数,一个类,甚至每一个command命令都是一个代码块.一个文件也是一个代码块,eval()和exec()执行的时候也是一个代码块 二,is 和 ==的区别 1.id() 通过id()我们可以查看到一个变量表示的值在内存中的地址. s='alex' 2.is 和 ==的区别 ==是判断左右两端的值是否相等.是不是一致. is是判断左右两端…
今天学习的主要内容: ppython的基本数据类型: 1. python基本数据类型回顾 2.int---数字类型 4.str---字符串类型 一.python基本数据类型 1. int==>整数.主要用来进行数学运算 2.str==>字符串,可以保存少量数据并进行相应的操作 3.bool==>判断真假,Ture,False 4.list==>储存大量数据.用[]来表示 5.tuple==>元组,不可以发生改变,用{}来表示 6.dict==>字典,保存键值对,一样可以…
Python 内置函数 lambda.filter.map.reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python 的 lambda.filter.map.reduce 进行初步的学习.reduce 仅提一下,递归的方法建议用循环替代. lambda 匿名函数 lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值. lambda语句构建的其实是一个函数对象,参考下例来感受下 lambda 匿名函数: def f(i…
一.默认参数的陷阱 先看如下例子: def func(li=[]): li.append(1) print(li) func() func() func(li=['abc']) func() 结果: 可以看到,默认参数不传值使用默认值时,多次调用函数li始终使用同一个列表. 如果默认参数是一个可变数据类型,每一次调用函数时,不传值就公用这个数据类型的资源. 使用pycharm写代码的时候,若在函数定义时将可变数据类型用作默认参数,pycharm会给出提示: Default argument va…
玩了一晚上王者,突然觉得该学习,然后大晚上的搞出来这道练习题,凌晨一点写博客(之所以这么晚就赶忙写是因为怕第二天看自己程序都忘了咋写的了),我太难了o(╥﹏╥)o 言归正传,练习题要求:构造类似京东的一个网站首页(超级简化),实现函数装饰器的设计(主要设计),装饰的内容为,无论添加什么商品进购物车,最终付款的时候都需要登录才能支付,且无论在哪个页面下登录过一次都不需要再次登录,即做一个函数装饰器,实现登录功能(装饰到所有商品界面). 我的实现:商品分类页面进行函数话,即一个类别构造一个函数,选择…
一.匿名函数 以后面试或者工作中经常用匿名函数 lambda,也叫一句话函数. 课上练习: # 正常函数: def func(a, b): return a + b print(func(4, 6)) # 10 # 匿名函数: func = lambda a, b: a + b print(func(11, 33)) # 44 # 写匿名函数:接收一个可切片的数据,返回索引为0与2的对应的元素(元组形式). func = lambda x: (x[0], x[2]) print(func('Dy…
函数 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 1.减少代码重复 2.保持代码的一致性 3.方便修改,可扩展性 函数的创建 #简单的函数 def f(): print("It's ok") f() #It's ok def :定义一个函数名 f:函数名(自己定义) ():方便传输参数,可写可不写 f():函数调用  函数名的命名规则: 1.函数名必须以下划线或字母开头,可以包含任意字母.数字或下划线的组合.不能使用任…
1. 判断函数是否可调用 >>> import math >>> x = 1 >>> y = math.sqrt >>> callable(x) False >>> callable(y) True 注意 函数callable在Python 3.0中不再可用,需要使用表达式hasattr(func,  __call)__代替. 2. 函数(或类)解释 1)函数注释,以"#"开头注释 2)文档字符串…
目录 Python 函数 函数调用 匿名函数 return语句 变量作用域 Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这被叫做用户自定义函数. 定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 任何传入参数和自变量必须放在圆括号中间.圆…
Python是对接口编程,而不是对数据类型编程.例如我们定义了一个函数,在函数里用到了in这个接口,那么只要传入的参数实现了这个接口就可以,我们不在乎它是list还是tuple. 简单的函数 使用def定义一个myAdd函数 def myAdd(a,b): return a+b L1,L2 = [1,3,5],[2,4,6] print [myAdd(x,y) for(x,y) in zip(L1,L2)] # [3,7,11] 全局变量:函数里使用的变量为局部变量,可以使用global将变量的…
一.函数参数的类型 之前我们接触到的那种函数参数定义和传递方式叫做位置参数,即参数是通过位置进行匹配的,从左到右,依次进行匹配,这个对参数的位置和个数都有严格的要求.而在Python中还有一种是通过参数名字来匹配的,这样一来,不需要严格按照参数定义时的位置来传递参数,这种参数叫做关键字参数. >>> def display(a,b): print a print b >>> display('hello','world') # 位置参数,即参数是通过位置进行匹配 hel…
一.函数形参和实参的区别 形参全称是形式参数,在用def关键字定义函数时函数名后面括号里的变量称作为形式参数. 实参全称为实际参数,在调用函数时提供的值或者变量称作为实际参数. >>> def add(a,b): #这里的a和b是形参 return a+b >>> add(1,2) # 这里的1和2是实参 3 >>> x=2 # 这里的x和y是实参 >>> y=3 >>> add(x,y) 5 二.参数的传递和改变…
一.函数的定义 在某些编程语言当中,函数声明和函数定义是区分开的(在这些编程语言当中函数声明和函数定义可以出现在不同的文件中,比如C语言),但是在Python中,函数声明和函数定义是视为一体的.在Python中,函数定义的基本形式如下: def function(params): block return expression/value 注意: (1)在Python中采用def关键字进行函数的定义,不用指定返回值的类型. (2)函数参数params可以是零个.一个或者多个,同样的,函数参数也不…