一、Python sys 模块

“sys” 是 “system”,是一个系统模块,该模块提供了一些接口,用户访问python解释器自身使用和维护的变量,同时模块中还提供了一些函数,而我们今天要讲解的 argv 就是其中一个函数。

二、sys.argv

这里sys 就相当于一个模块,而argv就是模块里的一个函数。

“argv” 即 “argument value” 是一个列表对象,其中存储的是在命令行调用 python 脚本是提供的 “命令行参数”。

这里重点理解这句话,我们举例来说明:

先看一个简单的例子:

import sys
print(sys.argv[0])

我们看一下输出结果:

这里我们将 文件命名为 test.py 放在我们的系统目录下,在cmd下执行:python test.py



可以看到结果是:被调用的脚本文件名或全路径

这里需要强调的是:argv[0] 是 被调用的脚本文件名或全路径。

那我们改一下程序,再试试:

import sys
print(sys.argv[0])
print(sys.argv[1])

这里我们将代码改成 argv[1]

此时我们输入 python test.py hello 看一下运行结果:

看到这,是不是有的小伙伴就明白啦,sys.argv[]其实就是一个列表。

那我们再试一个,既然sys.argv是一个列表,我们就让它从第三个开始输出:

import sys
print(sys.argv[0])
print(sys.argv[1])
print(sys.argv[2:])

这次我们输入的是 1 2 3 4 5 ,我们期望从列表的第三个元素开始输出,结果也很我们期望的一样,讲到这里,sys.argv就被我们彻底搞懂了。

总结:

sys.argv[]是一个列表

sys.argv[0]是被调用的脚本文件名或全路径

sys.argv[1:]之后的元素就是我们从程序外部输入的,而非代码本身的,想要看到它的效果,就要将程序保存,从外部运行程序并给参数,这也是我们在cmd里面运行的原因。

sys.argv的用法的更多相关文章

  1. Python中 sys.argv[]的用法

    Python中 sys.argv[]的用法 因为是看书自学的python,开始后不久就遇到了这个引入的模块函数,且一直在IDLE上编辑了后运行,试图从结果发现它的用途,然而结果一直都是没结果,也在网上 ...

  2. 31 Python中 sys.argv[]的用法简明解释(转)

    Python中 sys.argv[]的用法简明解释 因为是看书自学的python,开始后不久就遇到了这个引入的模块函数,且一直在IDLE上编辑了后运行,试图从结果发现它的用途,然而结果一直都是没结果, ...

  3. sys.argv]的用法

    Python中 sys.argv[]的用法简明解释 因为是看书自学的python,开始后不久就遇到了这个引入的模块函数,且一直在IDLE上编辑了后运行,试图从结果发现它的用途,然而结果一直都是没结果, ...

  4. Python中 sys.argv的用法简明解释

    Python中 sys.argv[]的用法简明解释 sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得 ...

  5. Python3 sys.argv[ ]的用法解释

    sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个"外部"很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得的参数可以是多个,所以获得的是一 ...

  6. Python中 sys.argv[]的用法简明解释

    sys.argv[]就是一个从程序外部获取参数的桥梁,这个“外部”很关键.因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能 ...

  7. Python3 中 sys.argv[ ]的用法解释

    sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list), ...

  8. sys.argv 详细用法

    sys.argv 用于获取命令行参数,用法如下: [root@localhost ~]$ cat 1.py #!/usr/bin/env python #-*- coding:utf-8 -*- im ...

  9. 【python】sys.argv[]的用法

    在学python的过程中,一直弄不明白sys.argv[]的意思,虽知道是表示命令行参数,但还是有些稀里糊涂的感觉. 今天又好好学习了一把,总算是大彻大悟了. Sys.argv[]是用来获取命令行参数 ...

  10. sys.argv[]基本用法

    #python 3.4.2 #windows系统下可以在CMD下执行 python test.py 第一参数 第2个参数 #空格分隔每个参数,sys.argv[]是用来获取命令行参数的 #引用必要的包 ...

随机推荐

  1. Linux相关命令及软件安装教程

    @font-face { font-family: "Times New Roman" } @font-face { font-family: "宋体" } @ ...

  2. Day34:BigDecimal的使用

    BigDecimal 在基本数据类型中对于浮点数的计算时会出现精度丢失的情况,这个时候我们采用BigDecimal类来解决精度丢失的问题. public class Test{ public stat ...

  3. NeurIPS 2022:基于语义聚合的对比式自监督学习方法

    摘要:该论文将同一图像不同视角图像块内的语义一致的图像区域视为正样本对,语义不同的图像区域视为负样本对. 本文分享自华为云社区<[NeurIPS 2022]基于语义聚合的对比式自监督学习方法&g ...

  4. js将数组内属性值相同的项合并成二维数组

    var ary=[ {"RaDate":'2021-09-08',"Type":'Morning1','title':'测试1'}, {"RaDate ...

  5. Linux第四章 进程

    4.1 前言 本章讨论进程概念.资源.属性. 4.2 内核和进程的关系 当系统启动时,内核代码被加载到内存,初始化之后,启动第一个用户进程,然后内核的代码就等着用户进程来调度了. 4.3 进程是程序的 ...

  6. 01.Java面试都问啥?

    大家好,我是王有志.好久不见,不过这次没有休假,而是搞了个"大"工程,花了点时间自学Python,然后写了"玩具爬虫",爬某准网的面经数据,为来年的" ...

  7. JavaScript 中URL 查询字符串(query string)的序列与反序列化

    方法一: 在 JavaScript 中,可以使用 URLSearchParams 对象来处理 URL 中的查询字符串. 序列化(将 JavaScript 对象转换为查询字符串)可以使用 URLSear ...

  8. DVWA靶场实战(五)——File Upload

    DVWA靶场实战(五) 五.File Upload: 1.漏洞原理: File Upload中文名叫做文件上传,文件上传漏洞是指用户上传了一个可执行脚本文件(php.jsp.xml.cer等文件),而 ...

  9. 算法学习笔记(3): 倍增与ST算法

    倍增 目录 倍增 查找 洛谷P2249 重点 变式练习 快速幂 ST表 扩展 - 运算 扩展 - 区间 变式答案 倍增,字面意思即"成倍增长" 他与二分十分类似,都是基于" ...

  10. 03-Verilog语法

    Verilog语法 1 Register 组合逻辑-->寄存器-->组合逻辑-->寄存器 Register是一个变量,用于存储值,并不代表一个真正的硬件DFF. reg A,C; / ...