python corr()用的是什么方法_用Python处理Args的3种方法

news/2024/7/7 15:37:48
cd244519791319bde6f3046401e9893a.png欢迎关注 “小白玩转Python”,发现更多 “有趣”

1. sys 模块

Python 中的 sys 模块具有 argv 功能。当通过终端触发 main.py 的执行时,此功能将返回提供给 main.py 的所有命令行参数的列表。除了其他参数之外,返回列表中的第一个元素是 main.py 的路径。

考虑下面的 main.py 示例

import syslist_of_arguments = sys.argvprint(list_of_args[0]) print(list_of_args[1]) print(list_of_args[2]) print(list_of_args[3])

用如下方式在命令行触发 main.py :

python main.py first_arg "[second_arg]" "{\"arg\": 3}"

输出的结果如下所示:

test.pyfirst_arg[second_arg]{"arg": 3}

2.带有一个大参数的 sys 模块

这是一种为 Python 代码提供参数的简单而强大的方法。你不需要提供按空格分隔的大量参数,而是提供一个单一的“大”参数。这个大参数是一个字符串字典,其中 dict-keys 表示参数名称,dict-value 表示相应的值。

考虑下面的 main.py 示例

import sysimport astraw_arguments = sys.argv[1]print(raw_arguments)arguments = ast.literal_eval(raw_arguments)print(arguments['name']) # Johnprint(arguments['surname']) # Doeprint(arguments['age']) # 22

用如下方式在命令行触发 main.py :

python main.py "{\"name\": \"John\", \"surname\": \"Doe\", \"age\": 22}"

输出的结果如下所示:

{"name": "John", "surname": "Doe", "age": 22}JohnDoe22

 3. argparse 模块

如果想为你的应用程序提供适当的命令行界面,则 argparse 是你需要的模块。

这是一个全面的模块,提供了现成的参数解析、帮助消息和误用参数时自动抛错。

要充分利用 argparse 提供的功能,需要花费一些时间来掌握。现在先然我们来考虑以下 main.py 示例:

import argparseparser = argparse.ArgumentParser(description='Personal information')parser.add_argument('--name', dest='name', type=str, help='Name of the candidate')parser.add_argument('--surname', dest='surname', type=str, help='Surname of the candidate')parser.add_argument('--age', dest='age', type=int, help='Age of the candidate')args = parser.parse_args()print(args.name)print(args.surname)print(args.age)

在初始化 ArgumentParses 的对象之后,我们使用 add_argument 函数添加所有预期的参数。该函数接收许多参数,其中包括参数名、目标变量、预期的数据类型、要显示的帮助消息等。

用如下方式在命令行触发 main.py :

python main.py --name John --surname Doe --age 22

输出的结果如下所示:

JohnDoe22

我们这里只是简单介绍一下,要了解更多关于这个模块的信息,可以查看这个链接https://docs.python.org/2/library/argparse.html。

总结

很多时候,你需要将参数传递给 Python 脚本。Python通过 sys 模块提供对这些参数的访问。你可以直接访问argv功能并自己处理参数解析,也可以将其他模块用作argparse来完成。对于小编来说,通常习惯使用sys模块,适合你的才是最好的~

·  END  ·HAPPY LIFE f3bb7a6bca9f757f5bea5b558b637305.png

http://www.niftyadmin.cn/n/1930035.html

相关文章

mac 项目部署

#!/bin/bash cd /workspace/GW/mybitauto-operation #替换环镜变量配置信息 src/main/resources/application.properties sed -i s/active.*/active: prod/g src/main/resources/application.properties# git pullmvn clean package/usr/bin/expect <<-EOF #参数设置 se…

mac mysql编码问题吗_Mac环境mysql5.7.21 utf8编码问题及解决方案

1. 目标&#xff1a;将 mysql 的 character_set_server 的值由 latin1 更改为 utf8暂时性&#xff1a;SET character_set_serverutf8 即可&#xff0c;一次性。永久性&#xff1a;需要更改配置文件&#xff0c;见第2步骤。2. mysql 5.7.21 的 support-files里没有配置文件。新建…

23种设计模式 访问者设计模式

https://github.com/yzmaodeng/java-keypointknowledge/commit/4745c8012aebd0022ea779fcef25ce2bc10be1b6访问者模式把数据结构和作用于结构上的操作解耦合&#xff0c;使得操作集合可相对自由地演化。访问者模式适用于数据结构相对稳定算法又易变化的系统。因为访问者模式使得…

小强升职记思维导图_《小强升职记》学习笔记(思维导图)

原图是在XMind中制作的&#xff0c;比较大&#xff0c;所以分解成几张图片来进行梳理。主要框架主要框架分为四个主要部分&#xff1a;认知、方法和工具、问题、实践&#xff0c;进行要点整理。认知1 认知1.1 时间黑洞1.1.1 产生的原因1.1.2 时间的特性1.2 人生目标1.2.1 人生规…

linux上面是否有安装redis,redis启动

edis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择&#xff0c;这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘&#xff0c;解压后&#xff0c;将文件夹重新命名为 redis。打开一个 cmd 窗口 使用cd命令切换目录到 C:\redis 运行 redis-server.exe redis.windows.…

MySQL 创建注册页面_需要flask+mysql实现用户注册和登陆效果页面如何实现

首先&#xff0c;请不要用任何ORM(当然SQLAlchemy&#xff0c;Flask-SQLAlchemy也不要用)初学flask&#xff0c;于是参照http://dormousehole.readthedocs.org/en/latest/tutorial/introduction.ht...实际用到的关键代码在这里&#xff1a;https://github.com/mitsuhiko/flask/…

Windows远程连接linux中mysql数据库

我没有mysql并且没有把mysql配置到环境变量中&#xff0c;所以现在我要下载mysql 一.下载mysql Mysql官网下载地址&#xff1a;https://downloads.mysql.com/archives/installer 二.安装mysql 1. 选择设置类型 双击运行mysql-installer-community-8.0.26.msi&#xff0c;这…

安装openssl和openssl-devel error: zlib.h:no such file or directory

今天在编译openssl时&#xff0c;出现了 error&#xff1a; zlib.h:no such file or directory 去看了下出错的文件&#xff0c;里面这么一句#includec_zlib.c:25:19: fatal error: zlib.h: No such file or directory # include <zlib.h>搜索发现下面的文章得到解决http…