转载地址:https://blog.csdn.net/njafei/article/details/72764990

今天写脚本的时候,正好希望在python脚本中调用另外一个python脚本,就使用了os.system来实现这个功能(当然,还有很多的办法,而且每种方法满足的需求不都一样,有兴趣的读者可以谷歌下)。

但是我需要给这个调用里面传入一个参数,网上查了半天,感觉都不太清晰,就写了这篇,简单介绍下。

os.system的定义是这样的

os.system("shell command argusFormat" % argus)

在双引号里面正常写命令,需要用到参数的地方,使用%s等格式代替,然后在双引号的后面加空格,加%号,然后在括号里写入所有的参数,用逗号隔开。

单个参数

param = 'I'm param'
os.system("python haha.py %s" % (param))

多个参数

paramA = 'I'm paramA'
paramB = 'I'm paramB'
os.system("python haha.py %s %s" % (paramA, paramB))

需要注意的是,shell中对于空格的要求特别严格,一定要注意别多或者少(写js的来写shell真的好难受O_O)。

python格式化

这里是参数的字符格式化,供大家参考

%s    字符串(采用str()的显示)
%r    字符串(采用repr()的显示)
%c    单个字符
%b    二进制整数
%d    十进制整数
%i    十进制整数
%o    八进制整数
%x    十六进制整数
%e    指数(基底写为e)
%E    指数(基底写为E)
%f    浮点数
%F    浮点数,与上相同
%g    指数(e)或浮点数(根据显示长度)
%G    指数(E)或浮点数(根据显示长度)
%%    字符"%"

os.system如何传参相关推荐

  1. c语言代码中调用系统命令行.sh shell脚本,linux shell system传参

    C语言代码中调用命令行: 1. 使用system(" 命令行 ");    --  执行完命令行后,会返回原先C代码的位置,继续执行. 2. 如果命令行中需要传参,使用 sprin ...

  2. Android按键响应的几种方式、安卓页面的跳转、页面跳转传参、页面自动跳转、Activity(页面)的生命周期

    按键响应的第一种方式: 在XML文件里面设置按键的onClick绑定函数.就像下面的代码,给Button设置onClick属性,在按键被按下的时候,会调用java文件里面的onClickbtton1这 ...

  3. Python3.X subprocess、os.system/os.popen/os.spawn*、commands:与系统进行交互,如测试时常用的adb命令

    如需转载请注明出处. win10 64位.Python 3.6.3.Sublime Text 3. 一.首先明白一些概念: 1.操作系统(OS,operating system). 是管理和控制计算机 ...

  4. 调用wsdl这种的地址,传参为xml,使用的工具类

    因为本人日常的调用地址,很多时候都是wsdl这种的,还需要XML格式的传参,测试的时候用到soapUI测试工具,传参方式是: <soapenv:Envelope xmlns:xsi=\" ...

  5. 搜索客户端传参监控,request日志监控

    设计思路 README.md 客户端传参request监控客户端: 1.客户端入手:客户端添加接口请求日志,打印request  和responses,把日志单独存放,然后进行日志分析监控 2.服务端 ...

  6. Go 学习笔记(25)— 并发(04)[有缓冲/无缓冲通道、WaitGroup 协程同步、select 多路监听通道、close 关闭通道、channel 传参或作为结构体成员]

    1. 无缓冲的通道 无缓冲的通道(unbuffered channel)是指在接收前没有能力保存任何值的通道. 这种类型的通道要求发送 goroutine 和接收 goroutine 同时准备好,才能 ...

  7. java void传参,Java中的传参

    变量有两种类型根本类型和类类型 参数也是变量,所以传参分为 根本类型传参 类类型传参 过程1:根本类型传参 根本类型传参 在办法内,无法修改办法外的根本类型参数 publicclassHero{ St ...

  8. python如何次传参给线程_python如何给线程中的函数传参?

    1.Process说明 (1)概念 process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建. (2)语法([group [, target [, name [, args [, k ...

  9. 2021-01-14python函数传参是传值还是传引用? 参数若是简单类型是传值 若是对象类型则是传引用,python是兼容两者传参方式的

    python函数传参是传值还是传引用? 首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题. ...

最新文章

  1. 点云python-pcl
  2. Android性能优化面试题,与性能优化相关面试题 - 与IPC机制相关面试题 - 《Android面试宝典》 - 书栈网 · BookStack...
  3. mysql大表join小表速度很慢_mysql多表join中,为什么子查询会那么慢,怎么解决-问答-阿里云开发者社区-阿里云...
  4. OpenGL hdrb和loom的实例
  5. 对大学 IT 专业教育的反馈
  6. java数字转换为日期_Java 日期字符串date与数字long之间的转换
  7. 回顾2016,工作总结!
  8. linux下 添加一个新账户tom,linux 账户管理命令 useradd、groupadd使用方法
  9. is_callable_Python callable()和__call __()
  10. 求职者:推销自己的四大妙招
  11. 国产电影凭什么霸屏电影院?
  12. LAMP虚拟主机架设论坛
  13. 汇编语言中sbb是什么意思_汇编语言里 sub是 什么功能?
  14. 论Flutter开发如何改善套娃地狱问题
  15. python 修改图片尺寸 留白_php 图片指定留白叠加缩放
  16. C语言-输出一个菱形图。
  17. 团购网站的销售额是怎么来的?
  18. 在Winform(C++/CLR)平台设计的(本地在线)音乐播放器(基于WMP(Windows Media Player)控件实现)
  19. 乌镇关注物联网安全 卡巴斯基重获中国政府投标许可
  20. 查找存储卡的路径在WM6 windows mobile

热门文章

  1. 【面试必备】GET和POST两种基本请求方法的区别
  2. 【思维】最大降雨量(解题报告)
  3. 9行代码AC_HDU-6374 Decimal(余数,因子)
  4. C++STL容器,你真的会用了吗?——插入、删除、遍历和查找操作性能对比——删除(精简易懂版,句句干货)
  5. Pytest入门【2】
  6. java tostring方法_Java程序员小伙启动项目报错,原来是使用了lombok
  7. 中学计算机老师的英语,中学计算机老师的路在何方?
  8. 若依的框架怎么样_基于bootstrapTable的若依框架如何获取表格选中行的整行数据?...
  9. eclipse3.2配置开发C/C++
  10. Windows + Eclipse + Gtk 环境(总结)