关于命令行执行Python脚本的传参方式

yizhihongxing

关于命令行执行Python脚本的传参方式,一般有两种方式:使用sys模块和使用argparse模块。下面我将分别对这两种方式进行详细讲解。

使用sys模块

sys模块是Python标准库中的一个模块,提供了对Python解释器进行访问的一些函数和变量。其中,sys.argv是一个字符串列表,包含了命令行参数。具体步骤如下:

1.首先,在Python脚本文件中导入sys模块:

import sys

2.使用sys.argv获取命令行参数,例如:

if __name__ == '__main__':
    # 获取命令行参数
    args = sys.argv
    # 打印命令行参数
    print(args)

这里会打印出一个列表,其中的第一个元素是脚本文件名,后面的元素是传递给脚本的参数。

3.使用命令行执行脚本文件,并传递参数:

$ python script.py arg1 arg2 arg3

这里 script.py 是脚本文件名,后面的 arg1, arg2, arg3 是传递的参数,多个参数之间用空格隔开。

4.运行结果如下:

['script.py', 'arg1', 'arg2', 'arg3']

使用argparse模块

argparse模块是Python标准库中的一个模块,用于解析命令行参数。相比sys模块,argparse模块提供的功能更加全面和灵活,并且支持参数类型的检查和默认值的设置。具体步骤如下:

1.首先,在Python脚本文件中导入argparse模块:

import argparse

2.创建ArgumentParser对象,并添加参数:

if __name__ == '__main__':
    # 创建ArgumentParser对象
    parser = argparse.ArgumentParser(description='This is a script demo')
    # 添加参数
    parser.add_argument('-a', '--arg1', type=int, default=0, help='This is arg1')
    parser.add_argument('-b', '--arg2', type=str, default='', help='This is arg2')
    parser.add_argument('-c', '--arg3', action='store_true', help='This is arg3')
    # 解析参数
    args = parser.parse_args()
    # 打印参数
    print(args.arg1, args.arg2, args.arg3)

这里创建了一个ArgumentParser对象,并使用add_argument方法添加了3个参数:arg1, arg2, arg3。

其中,-a, --arg1是arg1的参数名和参数缩写,type=int是指参数类型为整数,default=0是指默认值为0,help='This is arg1'是指参数的说明信息。

3.使用命令行执行脚本文件,并传递参数:

$ python script.py -a 123 -b 'hello' -c

4.运行结果如下:

123 hello True

这里将arg1的值设置为了123,arg2的值设置为了'hello',arg3的值设置为了True。

至此,以上就是关于命令行执行Python脚本的传参方式的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于命令行执行Python脚本的传参方式 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 在字典中对 Python 字典进行排序

    【问题标题】:Sort a Python dictionary within a dictionary在字典中对 Python 字典进行排序 【发布时间】:2023-04-05 19:56:01 【问题描述】: 我正在尝试对字典中的字典进行排序。我的目标是根据它的值从高到低对“子”字典 [‘extra’] 进行排序。我遇到的问题是我的“子”字典嵌套在主字典的…

    Python开发 2023年4月6日
    00
  • 10公共操作与推导式

    公共操作与推导式 公共操作 操作方法 功能 描述 操作类型 + 合并 将两个相同类型序列进行连接 字符串、列表、元组 * 复制 将里面的数据进行复制 字符串、列表、元组 len 获取序列长度 查看序列长度 字符串、列表、元组、字典,集合 reversed 倒置 将容器里面的数据倒置 字符串、列表、元组、字典 max, min 最大最小值 求容器数据的最大最小…

    python 2023年4月17日
    00
  • 提高 Python 开发效率的3个小工具

    以下是对“提高 Python 开发效率的3个小工具”的攻略: 工具一:自动化构建工具 自动化构建工具可帮助 Python 开发人员自动化执行项目构建的过程,这些过程包括测试、文档生成、代码质量检查等任务。使用自动化构建工具可以减轻开发人员的工作负担,从而提高工作效率。同时,自动化构建工具还可以减少代码出错的机会,提高代码的质量。 推荐使用的自动化构建工具有 …

    python 2023年5月19日
    00
  • php与python实现的线程池多线程爬虫功能示例

    首先需要了解什么是线程池和多线程爬虫。 线程池是指提前创建好一定数量的线程,等待需要执行任务的时候,将任务分配给已经创建的线程执行,避免了频繁创建和销毁线程的开销,提高了程序的运行效率。 多线程爬虫是指通过创建多个线程,同时抓取多个网页,加快抓取的速度。 下面是实现“php与python实现的线程池多线程爬虫功能”的攻略: 准备工作 为了完成线程池多线程爬虫…

    python 2023年5月19日
    00
  • python爬虫刷访问量 2019 7月

    Python爬虫是一种可以自动化模拟浏览器行为获取网页数据的技术,所以如果想要刷访问量,可以使用Python爬虫来实现。下面是一个完整的攻略以及两条示例说明。 一、前置知识 在实现Python爬虫之前,需要了解以下知识点: HTTP协议:了解HTTP请求和响应的格式,以及常见的状态码和内容类型。 HTML语法:了解HTML标签和结构,以及常见的CSS和Jav…

    python 2023年5月14日
    00
  • Python利用PyExecJS库执行JS函数的案例分析

    下面是详细讲解“Python利用PyExecJS库执行JS函数的案例分析”的完整攻略。 1. PyExecJS库简介 PyExecJS是一个运行不同JavaScript实现的Python库,它提供了一种简洁的方式,在Python中调用JavaScript代码。通过它,我们可以让Python调用JavaScript函数,从而实现更复杂的功能。PyExecJS通…

    python 2023年5月18日
    00
  • Python list和str互转的实现示例

    以下是详细讲解“Python list和str互转的实现示例”的完整攻略。 Python list和str互转 在Python中,我们经常需要将list和str类型相互转换。下面将分别介绍如何将list转换str,以及如何将str转换为list。 list转str 将list转换为str可以使用join()方法,该方法将列表中的元素连接成一个字符串。下面是一…

    python 2023年5月13日
    00
  • Python字典中items()函数案例详解

    下面我将详细讲解一下 “Python字典中items()函数案例详解” 的完整攻略。 标题 介绍 在Python中,字典是一种非常常用的数据结构。字典中的每个元素都由一个键和对应的值组成,可以通过键来访问对应的值。Python中提供了许多方便的函数来操作字典,其中之一就是items()函数。本文将会详细讲解items()函数的用法及示例。 items()函数…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部