优草派  >   Python

Python解析参数的方法有哪些?Python解析参数的三种方法分别是什么?

翟嘉慧            来源:优草派

不管是哪一种编程语言,它们有一个共同点就是:都有创建脚本并从终端运行它们或被其他程序调用的功能,在运行此类脚本时,我们经常需要传递脚本所需的参数,以便在脚本内执行各种功能,那你知道Python解析参数的方法有哪些?需要了解的小伙伴可以看看下面这篇文章。

Python解析参数的方法有哪些?Python解析参数的三种方法分别是什么?

一、Python解析参数的三种方法有哪些?

使用Python要解析参数的时候,存在着三种不同的解析方式,第一种是使用一个Python中流行的模块为:agrparse,在Python中是专门一个用来对命令行解析的模块;第二种方法是通过对json文件进行读取,就是在使用的时候,在json文件中放置有超参数;最后一种方式是使用yaml文件。具体的使用如下:

二、Python解析参数的三种方法

1、使用agrparse模块

使用这个模块之前,我们需要创建一个文件为train.py,如何在这个文件中可以对数据进行导入、以及在训练数据上训练模型并在测试集上对其进行评估的基本程序,并且在对代码编辑的时候,需要导入包含在 options.py 文件中的 train_options 函数。后一个文件是一个 Python 文件,我们可以从中更改 train.py 中考虑的超参数,代码如下:

import argparse
def train_options():
    parser = argparse.ArgumentParser()
    parser.add_argument("--normalize", default=True, type=bool, help='maximum depth')
    parser.add_argument("--n_estimators", default=100, type=int, help='number of estimators')
    parser.add_argument("--max_features", default=6, type=int, help='maximum of features',)
    parser.add_argument("--max_depth", default=5, type=int,help='maximum depth')
    opt = parser.parse_args()
return opt

2、使用json文件

可以使用和前面一样的操作,就可以使文件的结构继续保持类似的。首先将使用到的options.py 替换成为一个JSON文件先,用另外一种方式就是说在一个JSON文件中指定一个超参数的值并且将它们传递给之前的train.py文件。和argparse模块相比较的话,使用JSON文件可以是一种快速且直观的替代方案,它利用键值对来存储数据。下面我们创建一个options.json文件,其中包含我们稍后需要传递给其他代码的数据。代码如下:

{
"normalize":true,
"n_estimators":200,
"max_features":8,
"max_depth":6 
}

通过代码可以看到,它的格式是和字典非常相似的。

3、使用YAML文件

这是最后一种解析的方式使用的是yaml,使用它来操作其实和json文件差不多,使用之前我们先要将Python代码中的yaml进行转换,转换成一个字典如然后对数据进行读取,这样就可以去访问超参数的值。因为YAML 文件使用的是一种可以直接读取的数据语言,所与在结构上使用的是两个空格字符表示。

以上就是关于Python解析参数的方法有哪些?Python解析参数的三种方法分别是什么?的全部内容了,希望通过对这篇文章的学习,大家能掌握到更多的Python解析参数的知识。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行