命令行运行Python脚本时传入参数的三种方式详解

yizhihongxing

下面是“命令行运行Python脚本时传入参数的三种方式详解”的攻略。

命令行传参的三种方式

Python脚本中的参数可以通过命令行进行传递,共有3种方式:

  1. 简单传参方式
  2. 使用argparse库解析参数
  3. 使用click库解析参数

接下来分别详细讲解一下这三种方式。

简单传参方式

关键词:sys.argv

这种方式非常简单,直接在命令行中传递参数,然后在Python脚本中使用sys.argv列表进行读取即可。其中,sys.argv[0]表示Python脚本本身的文件名,sys.argv[1:]表示传入的所有参数。

下面是一个简单的示例代码:

import sys

if __name__ == '__main__':
    if len(sys.argv) > 1:
        print('传入的参数为:', sys.argv[1:])
    else:
        print('未传入参数')

在命令行中输入以下命令:

$ python simple_args.py 1 2 'Hello'

输出结果如下:

传入的参数为: ['1', '2', 'Hello']

使用argparse库解析参数

关键词:argparse

这种方式使用Python的argparse库进行参数解析,可以帮助开发者更方便地定义和管理参数。

下面是一个简单的示例代码:

import argparse

if __name__ == '__main__':
    parser = argparse.ArgumentParser(description='使用argparse解析参数')
    parser.add_argument('--name', '-n', help='姓名')
    parser.add_argument('--age', '-a', help='年龄')
    parser.add_argument('--gender', '-g', help='性别')

    args = parser.parse_args()

    print('姓名:', args.name)
    print('年龄:', args.age)
    print('性别:', args.gender)

在命令行中输入以下命令:

$ python argparse_demo.py -n XiaoMing -a 18 -g Male

输出结果如下:

姓名: XiaoMing
年龄: 18
性别: Male

使用click库解析参数

关键词:click

这种方式使用Python的click库进行参数解析,与argparse类似,但是更加简单易用。

下面是一个简单的示例代码:

import click

@click.command()
@click.option('--name', '-n', help='姓名')
@click.option('--age', '-a', help='年龄')
@click.option('--gender', '-g', help='性别')
def main(name, age, gender):
    print('姓名:', name)
    print('年龄:', age)
    print('性别:', gender)

if __name__ == '__main__':
    main()

在命令行中输入以下命令:

$ python click_demo.py -n XiaoMing -a 18 -g Male

输出结果如下:

姓名: XiaoMing
年龄: 18
性别: Male

到这里,三种传参方式的简单示例代码已经详细讲解完毕。通过学习这三种方式,可以让开发者更加高效地处理Python脚本中的参数。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:命令行运行Python脚本时传入参数的三种方式详解 - Python技术站

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

相关文章

  • Pandas的DataFrame如何做交集,并集,差集与对称差集

    Pandas是Python语言中用于数据分析和操作的常用库之一,而DataFrame是Pandas库中最重要的数据结构之一,它类似于Excel中的表格,可以方便地进行数据处理和运算。在DataFrame对象中,可以实现交集、并集、差集和对称差集的操作。 1. DataFrame的交集 利用Pandas的DataFrame对象的intersection()方法…

    python 2023年5月14日
    00
  • Python将列表数据写入文件(txt, csv,excel)

    下面是关于Python将列表数据写入文件(txt,csv,excel)的完整实例教程。 一、准备工作 在进行列表数据写入文件之前,需要先安装相关的库: 对于写入txt文件,可以使用python内置库open。 对于写入csv文件,需要安装csv库。 对于写入excel文件,需要安装openpyxl库。 在安装好相关库之后,我们就可以进行数据写入操作了。 二、…

    python 2023年5月13日
    00
  • 详解Python中的四种队列

    在Python中,队列是一种常用的数据结构,它可以用于实现多线程、异步编程等场景。Python中常用的队列有四种,分别是queue.Queue、queue.LifoQueue、queue.PriorityQueue和asyncio.Queue。本文将详细介绍这四种队列的特点、用法和示例。 queue.Queue queue.Queue是Python标准库中提…

    python 2023年5月13日
    00
  • Python发展简史 Python来历

    Python发展简史 Python是一门由Guido van Rossum于1989年所创建的高级编程语言,当时Guido在荷兰的CWI(荷兰国家数学和计算机科学研究学院)工作,并正在研究ABC语言。ABC是一种用于教学和科研用途的语言,Guido对该语言产生了浓厚的兴趣。 Guido在创造Python时的目标,是创造一种比ABC语言更强大的语言。在设计Py…

    python 2023年5月13日
    00
  • Python利用prettytable实现格式化输出内容

    当我们需要向终端输出一些数据时,通常使用Python内置的print()函数。但是当数据量很大时,输出的数据可能会显得杂乱无章,不便于阅读和理解。这时我们可以使用prettytable库来对输出内容进行格式化处理,以便更好地展示数据。 1. prettytable库的安装 在命令行中输入以下命令即可安装prettytable库: pip install pr…

    python 2023年6月5日
    00
  • Python还能这么玩之只用30行代码从excel提取个人值班表

    下面是详细的解释和示例: 标题 本文将会介绍如何使用Python从Excel表格中提取个人值班表,只需30行代码即可实现。本文主要分为以下几个步骤: 准备工作 导入所需库 读取Excel表格数据 处理数据 输出数据 准备工作 首先,需要准备好一个Excel表格,里面包含了个人值班表的数据。可以直接使用现成的Excel表格,也可以自己创建Excel表格并填充数…

    python 2023年5月13日
    00
  • python3.8.3安装教程及环境配置的详细教程(64-bit)

    下面是关于Python 3.8.3安装及环境配置的详细教程。 Python 3.8.3安装教程及环境配置的详细教程(64-bit) 1. 下载Python3.8.3 访问官方网站:https://www.python.org/downloads/release/python-383/,根据你的操作系统,选择64位的安装包下载。 选择“Python 3.8.3…

    python 2023年5月14日
    00
  • Python numpy.correlate()函数

    Python中的numpy.correlate()函数是用于计算两个一维序列的卷积/相关值的函数。具体用法如下: 函数语法 numpy.correlate(a, v, mode=’valid’) 函数参数说明: a: 输入一维序列,长度为nv: 输入一维序列,长度为m,通常n>mmode:卷积运算的模式(默认为’valid’) 返回值说明: 返回计算得…

    python-answer 2023年3月25日
    00
合作推广
合作推广
分享本页
返回顶部