在tensorflow 1.1.0中使用tf.app.flags.DEFINE_string时出现奇怪的冲突值

时间:2017-05-23 08:54:44

标签: python tensorflow

python代码很简单,如下所示:

import tensorflow as tf
import argparse


if __name__ == '__main__':
   parser = argparse.ArgumentParser()
   parser.add_argument('--train')
   args = parser.parse_args()

   tf.app.flags.DEFINE_string(
           "traindata",
           'train_data.hdf5',
           'train data'
           )
   print('args: ', args.train)
   print('FLAG: ', tf.app.flags.FLAGS.traindata)

然而,输出很奇怪:

$ python test.py --train 123
args:  123
FLAG:  123

只要tf.app.flags.DEFINE_string定义的字符串名称前缀等于args参数名称的字符串,tf.app.flags.FLAGS字符串值就与{args字符串完全相同1}}参数值。这意味着tf.app.flags.FLAGS定义无效。

1 个答案:

答案 0 :(得分:0)

由于$id=$_SESSION['id']; $id1=(string)$id; $result=mysqli_query($conn2,"SELECT * from '$id1'"); while($row=mysqli_fetch_assoc($result)) { echo $row['frnd_id']; } 只是tf.flags的一个简单包装器,因此argparse的特性允许您为参数添加前缀。 Python 3.5及更高版本允许您通过以下方式禁用此功能:

argparse