网站首页
手机版

python安装后使用方法 python安装成功后怎么运行

更新时间:2024-08-27 18:04:06作者:佚名

python安装后使用方法 python安装成功后怎么运行

如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式。

python script.py 0,1,2 10python script.py -gpus=0,1,2 --batch-size=10python script.py -gpus=0,1,2 --batch_size=10123

这三种格式对应不同的参数解析方式,分别为sys.argv、argparse、 tf.app.run, 前两者是python自带的功能,后者是tensorflow提供的便捷方式。

小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取

1.sys.argv
sys模块是很常用的模块, 它封装了与python解释器相关的数据,例如sys.modules里面有已经加载了的所有模块信息,sys.path里面是PYTHONPATH的内容,而sys.argv则封装了传入的参数数据。
使用sys.argv接收上面第一个命令中包含的参数方式如下:

import sysgpus = sys.argv[1]#gpus = [int(gpus.split(','))]batch_size = sys.argv[2]print(gpus)print(batch_size)123456

2.argparse

import argparseparser = argparse.ArgumentParser(description='manual to this script')parser.add_argument("--gpus", type=str, default="0")parser.add_argument("--batch-size", type=int, default=32)args = parser.parse_args()print(args.gpus)print(args.batch_size)1234567

需要注意的是,脚本运行命令python script.py -gpus=0,1,2 –batch-size=10中的–batch-size会被自动解析成batch_size.
parser.add_argument方法的type参数理论上可以是任何合法的类型, 但有些参数传入格式比较麻烦,例如list,所以一般使用bool, int, str, float这些基本类型就行了,更复杂的需求可以通过str传入,然后手动解析。bool类型的解析比较特殊,传入任何值都会被解析成True,传入空值时才为False

3.tf.app.run

'''遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!'''import tensorflow as tftf.app.flags.DEFINE_string('gpus', None, 'gpus to use')tf.app.flags.DEFINE_integer('batch_size', 5, 'batch size')FLAGS = tf.app.flags.FLAGSdef main(_): print(FLAGS.gpus) print(FLAGS.batch_size)if __name__=="__main__": tf.app.run()12345678910111213141516

有几点需要注意:

tensorflow只提供以下几种方法:

tf.app.flags.DEFINE_string,tf.app.flags.DEFINE_integer,tf.app.flags.DEFINE_boolean,

tf.app.flags.DEFINE_float 四种方法,分别对应str, int,bool,float类型的参数。这里对bool的解析比较严格,传入1会被解析成True,其余任何值都会被解析成False。

脚本中需要定义一个接收一个参数的main方法:def main(_):,这个传入的参数是脚本名,一般用不到, 所以用下划线接收。

以batch_size参数为例,传入这个参数时使用的名称为–batch_size,也就是说,中划线不会像在argparse 中一样被解析成下划线。

tf.app.run()会寻找并执行入口脚本的main方法。也只有在执行了tf.app.run()之后才能从FLAGS中取出参数。
从它的签名来看,它也是可以自己指定需要执行的方法的,不一定非得叫main:

本文标签: [db:关键词]  

为您推荐

2024余姚hpv疫苗打过二价还能打九价吗(余姚4价疫苗哪里可以打?)

根据接种要求显示,已接种过二价HPV疫苗的请勿申请摇号。既往全程接种过四价HPV疫苗,拟接种九价HPV疫苗的,至少间隔1年以上方可接种。

2024-09-14 00:38

大学生口语四级考试考什么?(大学生四级口语考试内容)

大学英语四、六级口语考试主要考核学生的英语口头表达能力,具体内容和考试过程、答题时间可以在正文查看。

2024-09-14 00:35

2024宁波象山九价HPV疫苗预约接种攻略(宁波象山九价宫颈癌疫苗怎么预约)

HPV疫苗接种是预防HPV感染及相关疾病的有效方法,象山九价HPV疫苗在浙里办摇号女神节福利名额,一起来看。

2024-09-14 00:35

2024大学生英语六级口试 大学生英语六级口语考试时间

2024大学生英语六级口试在11月24日进行,考试内容及形式可以在正文查看。

2024-09-14 00:31

大学生英语六级口语考试考什么(大学生英语六级口语考试考什么)

大学英语六级口语考试主要考核学生的英语口头表达能力,考试采用计算机化考试。考生在计算机上进行考生与模拟考官、考生与考生之间的互动。

2024-09-14 00:29

2024宁波宁海马拉松自助选号攻略(2021年宁波马拉松赛报名)

为了让选手拥有更好的参赛体验,宁海马拉松组委会特推出“自助选号”服务!报名成功选手可在参赛号码范围内选择自己心仪的参赛号码,一起来看。

2024-09-14 00:28