TensorFlow命令行参数处理模块

TensorFlow定义了tf.app.flags,用于支持接受命令行传递参数,默认支持四种类型:
 

tf.app.flags.DEFINE_boolean

tf.app.flags.DEFINE_string

tf.app.flags.DEFINE_integer

tf.app.flags.DEFINE_float

四种类型都接受三个入参分别为:("param_name", "default_val", "description"),下面是一个测试例子,供参考:

import tensorflow as tf 
  
FLAGS = tf.app.flags.FLAGS 
  
# tf.app.flags.DEFINE_string("param_name", "default_val", "description") 

tf.app.flags.DEFINE_boolean('boolean_arg_0', True,'boolean_description_0')
tf.app.flags.DEFINE_boolean('boolean_arg_1', False,'boolean_description_1')
tf.app.flags.DEFINE_string("string_arg_0", "string_val_0", "string_description_0") 
tf.app.flags.DEFINE_string("string_arg_1", "string_val_1", "string_description_1") 
tf.app.flags.DEFINE_integer("integer_arg_0", 0, "integer_description_0") 
tf.app.flags.DEFINE_integer("integer_arg_1", 1, "integer_description_1") 
tf.app.flags.DEFINE_float("float_arg_0", 0.0, "float_description_0") 
tf.app.flags.DEFINE_float("float_arg_1", 1.0, "float_description_1")
  
def main(unused_argv): 
	print("*" * 30)
	boolean_arg_0 = FLAGS.boolean_arg_0 
	print("boolean_arg_0", boolean_arg_0) 
	print("*" * 30) 
	boolean_arg_1 = FLAGS.boolean_arg_1 
	print("boolean_arg_1", boolean_arg_1)
	print("*" * 30)
	string_arg_0 = FLAGS.string_arg_0 
	print("string_arg_0", string_arg_0) 
	print("*" * 30) 
	string_arg_1 = FLAGS.string_arg_1 
	print("string_arg_1", string_arg_1) 
	print("*" * 30) 
	integer_arg_0 = FLAGS.integer_arg_0 
	print("integer_arg_0", integer_arg_0) 
	print("*" * 30) 
	integer_arg_1 = FLAGS.integer_arg_1 
	print("integer_arg_1", integer_arg_1) 
	
	print("*" * 30) 
	float_arg_0 = FLAGS.float_arg_0 
	print("float_arg_0", float_arg_0) 
	print("*" * 30) 
	float_arg_1 = FLAGS.float_arg_1 
	print("float_arg_1", float_arg_1) 
	
	integer_add = tf.add(integer_arg_0, integer_arg_1) 
	float_add = tf.add(float_arg_0, float_arg_1) 
	
	init = tf.global_variables_initializer() 
	
	with tf.Session() as sess: 
		sess.run(init) 
		print("integer_add", sess.run(integer_add)) 
		print("float_add", sess.run(float_add)) 
   
if __name__ == '__main__': 
	tf.app.run()

使用举例:

1. test_app_args.py -h    当用-h参数时,不运行脚本的逻辑处理代码,只是输出我们定义的参数默认值以及参数描述;

2. test_app_args.py         不指定任何参数时, 脚本会使用默认参数运行脚本的逻辑处理代码;

3. test_app_args.py --boolean_arg_0=False  当指定某一些参数时,指定参数值会覆盖默认参数值,并使用新的参数值运行脚本      的逻辑处理代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值