指令行解析
IDE内點選Run運作代碼直接得出結果 VS 基于TF flags(或argparse庫)在Dos内指令行(一條指令)調用代碼檔案得出結果
FLAGS = tf.app.flags.FLAGS
tf.app.flags.DEFINE_string('train_dir', '/tmp/cifar10_train',
"""Directory where to write event logs """)
T1、采用FLAGS函數并IDE内點選Run運作代碼直接得出結果
FLAGS.train_dir='cifarlO_train/'
FLAGS.max_steps='1000000'
FLAGS.log_device_placement='False'
FLAGS.log_frequency='10'
T2、采用TF flags(或argparse庫)在Dos内一條指令調用代碼檔案得出結果
python cifar10_train.py --train_dir cifar10_train/ --data _dir cifar10_data/
"""Directory where to write event logs """
"""and checkpoint.""") #寫入事件日志和檢查點的目錄
tf.app.flags.DEFINE_integer('max_steps', 1000000,
"""Number of batches to run.""") #要運作的批次數
tf.app.flags.DEFINE_boolean('log_device_placement', False,
"""Whether to log device placement.""") #是否記錄裝置放置
tf.app.flags.DEFINE_integer('log_frequency', 10,
"""How often to log results to the console.""") #将結果記錄到控制台的頻率
T3、采用sys.argv[]函數在Dos内一條指令調用代碼檔案得出結果
#test.py
import sys
def main(argv):
print(argv[0])
print(argv[1])
print(argv[1:])
print(argv[1][1:])
print('sys.argv[0]:',sys.argv[0]) #腳本名字
print('sys.argv[1]:',sys.argv[1]) #腳本第一個參數
print('sys.argv[1:]:',sys.argv[1:])
print('sys.argv:',sys.argv) #腳本的所有參數
print('type(sys.argv):',type(sys.argv))
print('len(sys.argv):',len(sys.argv)) #腳本的參數個數
return 0
if __name__ == '__main__':
sys.exit(main(sys.argv[1:])) #sys.exit(0)正常退出, sys.exit(1)非正常退出