侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

201702015--PYTHON--yield+*args+字符串的处理

2023-11-26 星期日 / 0 评论 / 0 点赞 / 65 阅读 / 6575 字

定义函数 >>> def add(n1,n2):... print n1+n2...>>> type(add)<type 'function'>>>> add(11,33)44>>> bb =

定义函数
 

>>> def add(n1,n2):...   print n1+n2...>>> type(add)<type 'function'>>>> add(11,33)44>>> bb = add(11,22)33>>> print bbNone>>> bb>>> def add(n1,n2):...   return n1+n2...>>> bb = add(11,22)>>> print bb33>>> bb33>>> c = add>>> c(11,22)33>>> id(c)140381409654976>>> id(add)140381409654976>>>

 

函数递归了

>>> def f():...   return add... >>> >>> cc = f()>>> type(cc)<type 'function'>>>> cc(23,23)46>>> def f():...   def add(n1,n2):...     return add...   return add... >>> cc = f()>>> type(cc)<type 'function'>>>> cc(11,22)<function add at 0x7fad180e3230>>>> 

   全局变量 global,不建议使用

>>> def f01(n1,n2):...   return n2,n1... >>> f01(11,22)(22, 11)>>> ()()>>> def f02(n1,n2):...   return n1*10 ,n2*100... >>> f02(11,22)(110, 2200)>>> def f03(n1,n2):    //在函数里面调用函数...   return f02(n2,n1)... >>> f03(11,44)(440, 1100)>>> 

 

>>> def add(n1,n2):...   return n1+n2... >>> add(11,22)33>>> add(11,22,33)  //函数只定义了两个参数,传入三个参数就会报错Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: add() takes exactly 2 arguments (3 given)>>> 

 

>>> def add(l):...   s=0...   for i in l:...     s += i...   return s... >>> add([11,22,33,44,55])165>>> sum([11,22,33,44,55])165>>> def add(l):...   return sum(l)... >>> add([11,22,33,44,55])  //传参进去,传一个列表进去165>>> add(11,22,33,44,55)   //这里将会把他们当作五个参数Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: add() takes exactly 1 argument (5 given)>>> 

传不定长参数,这里的args可以为其他任意字母

传参

 

字典的传参 **kwargs 定义字典的参数

return 只是返回值,需要告诉他怎么处理

**定义关键字参数,必须写在后面

 

*args ,**kwargs  //args 表示非关键字参数的元组,kwargs表示关键字参数的字典,非关键字参数必须在后面

定义默认参数

 

is 用来比较两个变量是否指向同一个内存地址,可以用==代替

set (集合):无序不重复的元素集

a = set(list) //将列表转化为集合

 

匿名函数 lamda

@装饰器 改变函数的行为,装饰器接受函数作为参数,返回一个新的函数

 

 

yield 相当于一个发射器,每次只发送一发子弹,用一个生成一个,相当于生成器

 

反向打印字符串,

jion方法:

yield方法

 

eval

exec 将字符串参数,作为python脚本运行

 

filter(function,sequence)//将序列传给函数处理

reduce

reduce指定初始值

zip sequence循环

 

自定义排序

enumerate :枚举

 

广告 广告

评论区