柏老师python笔记(四)
来源:互联网 发布:倚天交易软件讲解 编辑:程序博客网 时间:2024/06/03 02:28
# encoding: utf-8
"""
author: Leo
date: 2017-6-21
"""
# 函数的使用
# 参数的收集(Python)使用这种方法解决参数个数不确定性
# *arg返回的是一个元祖的类型,如果不给*arg传值的话那么他就是一个空的元祖
def func(x, *arg):
print x
result = x
print arg
for i in arg:
result += i
return result
print(func(1, 2, 3, 4, 5, 6, 7, 8, 9))
# 还可以用**kargs的形式接收数值输入必须是:arg=val,在传值的时候需要指定键和值
# 并且**kargs返回的是一个字典
def foo(**kargs):
print(kargs)
print(foo(a=1, b=2, c=3))
# 下面这种方式可以更高效的利用参数的收集
def book(author, name):
print('%s is writing %s' % (author, name))
bars = {'name': 'HuLuWa', 'author': 'Joker'}
print(book(**bars))
"""特殊函数"""
# 递归:函数在定义中使用函数自身的方法,
# 几个特殊函数:filter、map、reduce、lambda、yield
# lambda
def add(x):
x += 3
return x
numbers = range(10)
print(numbers)
# 使用lambda: 1.在lambda后面直接跟变量
# 2.变量后面是冒号
# 3.冒号后面是表达式,表达式计算结果是本函数的返回值。
lam = lambda x: x + 3
n2 = []
for i in numbers:
n2.append(lam(i))
print(n2)
g = lambda x, y: x + y
print(g(4, 5))
# map(func, seq)func是一个函数,seq是一个序列对象,序列对象中的每个元素,按照从左到右的顺序被取出来,塞入到func函数里
# 并将func的返回值一次存到一个列表中。
print(map(lambda x: x + 3, numbers))
# zip():主要的功能就是将两个列表对应的位置组合成一个列表,里面所以的元素都是元组
a = [1, 3, 5, 7, 9]
b = [2, 4, 6, 8, 10]
print(zip(a, b)) # [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
print(sum(x * y for x, y in zip(a, b))) # 190
# filter 过滤器,filter(function, iterable)
numbers = range(-5, 5)
print(filter(lambda x: x > 0, numbers))
"""
author: Leo
date: 2017-6-21
"""
# 函数的使用
# 参数的收集(Python)使用这种方法解决参数个数不确定性
# *arg返回的是一个元祖的类型,如果不给*arg传值的话那么他就是一个空的元祖
def func(x, *arg):
print x
result = x
print arg
for i in arg:
result += i
return result
print(func(1, 2, 3, 4, 5, 6, 7, 8, 9))
# 还可以用**kargs的形式接收数值输入必须是:arg=val,在传值的时候需要指定键和值
# 并且**kargs返回的是一个字典
def foo(**kargs):
print(kargs)
print(foo(a=1, b=2, c=3))
# 下面这种方式可以更高效的利用参数的收集
def book(author, name):
print('%s is writing %s' % (author, name))
bars = {'name': 'HuLuWa', 'author': 'Joker'}
print(book(**bars))
"""特殊函数"""
# 递归:函数在定义中使用函数自身的方法,
# 几个特殊函数:filter、map、reduce、lambda、yield
# lambda
def add(x):
x += 3
return x
numbers = range(10)
print(numbers)
# 使用lambda: 1.在lambda后面直接跟变量
# 2.变量后面是冒号
# 3.冒号后面是表达式,表达式计算结果是本函数的返回值。
lam = lambda x: x + 3
n2 = []
for i in numbers:
n2.append(lam(i))
print(n2)
g = lambda x, y: x + y
print(g(4, 5))
# map(func, seq)func是一个函数,seq是一个序列对象,序列对象中的每个元素,按照从左到右的顺序被取出来,塞入到func函数里
# 并将func的返回值一次存到一个列表中。
print(map(lambda x: x + 3, numbers))
# zip():主要的功能就是将两个列表对应的位置组合成一个列表,里面所以的元素都是元组
a = [1, 3, 5, 7, 9]
b = [2, 4, 6, 8, 10]
print(zip(a, b)) # [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
print(sum(x * y for x, y in zip(a, b))) # 190
# filter 过滤器,filter(function, iterable)
numbers = range(-5, 5)
print(filter(lambda x: x > 0, numbers))
阅读全文
0 0
- 柏老师python笔记(四)
- 柏老师python笔记(二)
- 柏老师Python笔记(三)
- 柏老师Python学习笔记(一)
- 小布老师讲座笔记(四)
- 看郭克华老师的视频教学笔记(四)
- 唐老师数据结构 专题四的笔记
- python学习笔记:四
- python笔记(四)
- python笔记四-字典
- python学习笔记四
- python笔记(四)
- Python学习笔记(四)
- python学习笔记(四)
- python笔记(四)
- Fluent Python 笔记四
- Python学习笔记:四
- Python学习笔记(四)
- ROS教程(五):理解 ROS节点
- Android apk升级 兼容6.0 7.0 低版本 华为手机
- 柏老师Python笔记(三)
- 9.Shuffle读写源码分析
- 【网络协议】-应用层常见的几种协议
- 柏老师python笔记(四)
- Qt 多国语言
- vim使用总结
- ROS教程(六):理解ROS话题
- 阿里巴巴ODPS/MaxComputer
- 长乐十日游
- 《简明Python教程》之控制流
- redhat7源码编译hadoop2.6.0
- 10.BlockManager源码分析