在Python中,你可以通过以下几种方式给脚本传递参数值:
使用`sys.argv`:
`sys.argv`是Python的`sys`模块中的一个列表,它包含了从命令行传递给脚本的参数。`sys.argv`是脚本名称,后面的元素是传递给脚本的参数。
import sys
gpus = sys.argv gpus = [int(gpus.split(','))]
batch_size = sys.argv
print(gpus)
print(batch_size)
使用`argparse`模块:
`argparse`是Python标准库中的一个模块,用于编写用户友好的命令行接口。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-gpus', nargs='+', type=int, help='List of GPUs to use')
parser.add_argument('-batch_size', type=int, help='Batch size for the model')
args = parser.parse_args()
print(args.gpus)
print(args.batch_size)
使用`tf.app.run`:
`tf.app.run`是TensorFlow库中的一个函数,用于运行Python程序,并自动解析命令行参数。
import tensorflow as tf
tf.app.run(main)
在命令行中,你可以这样使用这些参数:
直接传递参数值:
python script.py 0 1 2 10
使用`-gpus`和`-batch_size`选项:
python script.py -gpus 0,1,2 -batch_size 10
使用`argparse`的格式:
python script.py -gpus 0,1,2 -batch_size 10
使用`tf.app.run`的格式(通常不需要手动指定参数,因为`tf.app.run`会自动解析):
python script.py
如果你需要从用户那里获取输入,可以使用`input`函数,但这通常用于获取命令行参数之外的交互式输入。
a = input("Enter something: ")
print(a)
希望这些信息对你有帮助!