python和Keras.backend常见函数

简介: python 常见函数(v3.0)lambda 匿名函数# lambda :func = lambda x, y: x + yprint(func(1, 2))# 输出 3map 函数将 一个或多个 sequnce 中元素作为参数传递到 func 中执行,并以迭代器的方式将函数执行结果返回。

python 常见函数(v3.0)

lambda 匿名函数

# lambda <params>:<result>
func = lambda x, y: x + y
print(func(1, 2))
# 输出 3

map 函数

将 一个或多个 sequnce 中元素作为参数传递到 func 中执行,并以迭代器的方式将函数执行结果返回。

# map(func, sequnce[, sequnce,....]) -> iterator
>> list(map(lambda x: x+2, [1,2,3]))
[3, 4, 5]
>> list(map(pow, [1,2,3], [2,3,4]))
[1, 8, 81]

filter 函数

过滤器, 若function为None,则会返回包含非空元素的迭代器。

# filter(func or None, sequence) -> iterator
>> list(filter((lambda x: x>0),range(-5,5)))
[1,2,3,4]
>> list(filter(None,range(-5,5)))
[-5, -4, -3, -2, -1, 1, 2, 3, 4]

map 函数

对sequnce中元素依次执行 func, 并返回一个map对象

# map(func, sequence)
>> map(lambda x: x*x*x, range(1, 11)
<map object at 0x7fafdf0d6978>
>> list(map(lambda x: x*x*x, range(1, 11))
[1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]

当 func 参数为多个参数时, sequence 数量与之对应

reduce 函数

迭代 sequence 中内容逐一调用相应函数, 返回一个结果

# reduce(func, sequence, starting_value)
# starting_value 为初始调用值, 可为空或省略
>> reduce(lambda x, y: x + y, range(1, 11))
55

在 python 3 之后如果想用 reduce 可以采用 functools, 因为其已经被移除 python 3 内置的功能, 方法如下:

import functools
functools.reduce(lambda x, y: x + y, range(1, 11))

zip 函数

接收 sequence 对象作为参数, 将对象中对应的元素打包成为一个个 tuple, 然后返回由这些 tuples 组成的 list. 若传入参数的长度不等, 则返回 list 的长度和参数中长度最短的对象相同. 使用 * 操作符与 zip 函数配合可以实现与 zip 相反的功能,即将合并的序列拆成多个 tuple.

# zip([sequence, ...])
>> x = [1, 2, 3]; y = ['a', 'b', 'c']
>> list(zip(x, y))
[(1,'a'),(2,'b'),(3,'c')]
>> list(zip(*zip(x, y)))
[(1,2,3),('a','b','c')]
# 长度不一样
>> x = [1, 2, 3]; y = ['a', 'b', 'c', 'd']
>> list(zip(x, y))
[(1,'a'),(2,'b'),(3,'c')]
>> list(zip(*zip(x, y)))
[(1,2,3),('a','b','c')]

keras 样本打散

# data_x 是 numpy.array 对象
indices = numpy.random.permutation(data_x.shape[0]) # shape[0]表示第0轴的长度,通常是训练数据的数量
rand_data_x = data_x[indices]
rand_data_y = data_y[indices] # data_y就是标记(label)
目录
相关文章
|
3月前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
101 0
|
2月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
140 67
|
2天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
14 2
|
30天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
49 18
|
21天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
46 8
|
1月前
|
Python
Python中的函数
Python中的函数
44 8
|
2月前
|
监控 测试技术 数据库
Python中的装饰器:解锁函数增强的魔法####
本文深入探讨了Python语言中一个既强大又灵活的特性——装饰器(Decorator),它以一种优雅的方式实现了函数功能的扩展与增强。不同于传统的代码复用机制,装饰器通过高阶函数的形式,为开发者提供了在不修改原函数源代码的前提下,动态添加新功能的能力。我们将从装饰器的基本概念入手,逐步解析其工作原理,并通过一系列实例展示如何利用装饰器进行日志记录、性能测试、事务处理等常见任务,最终揭示装饰器在提升代码可读性、维护性和功能性方面的独特价值。 ####
|
2月前
|
Python
Python中的`range`函数与负增长
在Python中,`range`函数用于生成整数序列,支持正向和负向增长。本文详细介绍了如何使用`range`生成负增长的整数序列,并提供了多个实际应用示例,如反向遍历列表、生成倒计时和计算递减等差数列的和。通过这些示例,读者可以更好地掌握`range`函数的使用方法。
54 5
|
3月前
|
Python
Python之函数详解
【10月更文挑战第12天】
Python之函数详解
|
3月前
|
存储 数据安全/隐私保护 索引