天天看點

Python指令行解析:IDE内點選Run運作代碼直接得出結果、基于TF flags(或argparse、sys.argv)在Dos内指令行(一條指令)調用代碼檔案得出結果

指令行解析

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)非正常退出

繼續閱讀