当前位置: 首页 > Python编程 > Python编程实战技能 > Python编程基础入门 > Python之sys和argv详解

Python之sys和argv详解

发布时间:2020年09月27日 09:11:19 来源: 点击量:482

【摘要】1、python中sys和argv的应用:sys为python的内置模块,提供了很多函数和变量来处理Python运行时环境的不同部分。还有一点,可以引入这个东

1、python中sys和argv的应用:

sys为python的内置模块,提供了很多函数和变量来处理Python运行时环境的不同部分。还有一点,可以引入这个东西到实现web跟Python之间的交互。 比如说,web端传递一个参数或者文件/图片等过来,python接收,最后Python处理以后,返回结果给web前端显示。

argv为“参数变量”,是一个参数列表,且第一个参数为脚本名称。

sys.argv为sys模块的参数变量,同样可以视为参数列表,通过sys.argv[ ]来提取。sys.argv[0]表示参数列表中的第一个参数,即脚本本身名称;sys.argv[1]表示第二参数,如下图3,对应ex14.py,a,b,c中的第二参数,a。

以《笨办法学Python》中的例子来说明两者的作用与区别:

两者所实现的结果一样,都将命令行输入参数转为输出。

只是from sys import argv可以通过a,b,c,d……=argv来进行批量参数赋值,将argv中的参数依次赋值给左边的变量。

而import sys去只能通过a=sys.argv[]这样来逐个赋值。

两者的另一个区别在于命令行参数的输入上:

使用from sys import argv语句,则输入参数的数量必须与a,b,c,d……=argv中赋值的变量数量相同,否则会报错;

而import sys则不会,哪怕输入数量大于所读取的数量也无所谓,sys.argv[ ]只会按位读取。

至于为什么会有这样的差别,或许就是因为sys.argv[ ]的按位读取吧。

2、web端的应用:

这是在我自己的深度学习项目中使用到的部分截图。

就是使用web前端上传一张图片存到tomcat服务器下,然后java控制层拿到这个上传路径path,然后调用python脚本,执行模型识别。最后返回结构,java读取传递到jsp页面显示。

从web端上传一张照片保存到tomcat服务器下,得到一个上传路径path,然后在java控制层里面调用python文件的时候后面还附加了一个path,这个就是传递的参数。

然后到了python文件之中,使用from sys import argv的方式。把传递来的path作为参数接收。

img=argv[1] 就是接收图片,然后进行处理。

最后Python文件中的print 输出语句可以输出到web项目的开发工具eclipse的控制台中。

然后在java中使用文件输入输出流来读取控制台消息,如上上图的:

in.readline();

就拿到了python处理以后的数据,然后传递到jsp页面显示即可。

python学习网,大量的免费python视频教程,欢迎在线学习!

本文转自:https://blog.csdn.net/ITBigGod/article/details/79930007

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部