tf.Variable(initializer,name): initializer 初始化参数; name 变量名称(自定义)。
tf.Variabale()构造一个变量添加进图里(一个tensor),并且需要一个指定变量的类型和形状的初始值,通过tf.Variable构造的函数后,此变量的类型和形状不可更改。
用法如下:
import tensorflow as tf v = tf.variable(tf.ones([2,2]),name='v') with tf.Session() as sess: sess.run(tf.global_variables_initializer()) print(sess.run(v)) #结果如下: [[1.,1.] [1.,1.]]
lambda_expr ::= "lambda" [parameter_list]: expression lambda_expr_nocond ::= "lambda" [parameter_list]: expression_nocond
Lambda expressions (sometimes called lambda forms) are used to create anonymous functions. The expression lambda arguments: expression yields a function object(表达式产生一个函数对象). The unnamed object behaves like a function object defined with(此函数对象没有名字但是功能与def 定义函数类似) def <lambda>(arguments): return expression See section Function definitions for the syntax of parameter lists. Note that functions created with lambda expressions cannot contain statements or annotations(用lambda表达式创建的函数不能包含语句或注释。).
可以理解为lambda是用一个表达式定义一个函数(unnamed),
特点:
1.功能与def类似。但是def是语句,lambda是表达式;
2.lambda函数不能完成复杂的逻辑,功能简单;
3.lambda使代码简洁,定义的函数更易理解;
用法:
s = lambda x:x+1 #x为入口参数 x+1为表达式(表达式可以是任意的且只能有一个,但参数不唯一) print(s(1)) #结果为: 2 s = lambda x,y:x+y print(s(2,1)) #结果为: 3