简单了解python调用其他脚本方法实例


Posted in Python onMarch 26, 2020

1.用python调用python脚本

#!/usr/local/bin/python3.7
import time
import os 

count = 0
str = ('python b.py')
result1 = os.system(str)
print(result1)
while True:
  count = count + 1
  if count == 8:
   print('this count is:',count) 
   break
  else:
   time.sleep(1)
   print('this count is:',count)  

print('Good Bye')

另外一个python脚本b.py如下:

#!/usr/local/bin/python3.7
print('hello world')

运行结果:

[python@master2 while]$ python a.py
hello world
this count is: 1
this count is: 2
this count is: 3
this count is: 4
this count is: 5
this count is: 6
this count is: 7
this count is: 8
Good Bye

2.python调用shell方法os.system()

#!/usr/local/bin/python3.7
import time
import os 

count = 0
n = os.system('sh b.sh')
while True:
  count = count + 1
  if count == 8:
   print('this count is:',count) 
   break
  else:
   time.sleep(1)
   print('this count is:',count)  

print('Good Bye')

shell脚本如下:

#!/bin/sh
echo "hello world"

运行结果:

[python@master2 while]$ python a.py
hello world
this count is: 1
this count is: 2
this count is: 3
this count is: 4
this count is: 5
this count is: 6
this count is: 7
this count is: 8
Good Bye

3.python调用shell方法os.popen()

#!/usr/local/bin/python3.7
import time
import os 
count = 0
n = os.system('sh b.sh')
while True:
  count = count + 1
  if count == 8:
   print('this count is:',count) 
   break
  else:
   time.sleep(1)
   print('this count is:',count)  

print('Good Bye')

运行结果:

[python@master2 while]$ python a.py
<os._wrap_close object at 0x7f7f89377940>
['hello world\n']
this count is: 1
this count is: 2
this count is: 3
this count is: 4
this count is: 5
this count is: 6
this count is: 7
this count is: 8
Good Bye

os.system.popen() 这个方法会打开一个管道,返回结果是一个连接管道的文件对象,该文件对象的操作方法同open(),可以从该文件对象中读取返回结果。如果执行成功,不会返回状态码,如果执行失败,则会将错误信息输出到stdout,并返回一个空字符串。这里官方也表示subprocess模块已经实现了更为强大的subprocess.Popen()方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
Nov 15 Python
Tornado Web服务器多进程启动的2个方法
Aug 04 Python
利用Python中的mock库对Python代码进行模拟测试
Apr 16 Python
Django接受前端数据的几种方法总结
Nov 04 Python
简单谈谈Python中的几种常见的数据类型
Feb 10 Python
python 文件操作删除某行的实例
Sep 04 Python
Python编程实现线性回归和批量梯度下降法代码实例
Jan 04 Python
python 有效的括号的实现代码示例
Nov 11 Python
python微信公众号开发简单流程实现
Mar 09 Python
k-means 聚类算法与Python实现代码
Jun 01 Python
用python-webdriver实现自动填表的示例代码
Jan 13 Python
python turtle绘制多边形和跳跃和改变速度特效
Mar 16 Python
Python tornado上传文件的功能
Mar 26 #Python
Python Tornado批量上传图片并显示功能
Mar 26 #Python
python列表删除和多重循环退出原理详解
Mar 26 #Python
执行Python程序时模块报错问题
Mar 26 #Python
python3 正则表达式基础廖雪峰
Mar 25 #Python
python 6.7 编写printTable()函数表格打印(完整代码)
Mar 25 #Python
python实现人机五子棋
Mar 25 #Python
You might like
世界收音机发展史
2021/03/01 无线电
php URL跳转代码 减少外链
2011/06/25 PHP
php 记录进行累加并显示总时长为秒的结果
2011/11/04 PHP
php xml常用函数的集合(比较详细)
2013/06/06 PHP
php三维数组去重(示例代码)
2013/11/26 PHP
用JavaScript脚本实现Web页面信息交互
2006/10/11 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
js获取location.href的参数实例代码
2013/08/02 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
2015/11/18 Javascript
js和jquery分别验证单选框、复选框、下拉框
2015/12/17 Javascript
Bootstrap每天必学之模态框(Modal)插件
2016/04/26 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
基于BootStrap栅格栏系统完成网站底部版权信息区
2016/12/23 Javascript
js实现随机数字字母验证码
2017/06/19 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
JavaScript变量基本使用方法实例分析
2019/11/15 Javascript
对vue生命周期的深入理解
2020/12/03 Vue.js
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
2017/07/27 Python
Python实现统计给定字符串中重复模式最高子串功能示例
2018/05/16 Python
详解Python if-elif-else知识点
2018/06/11 Python
matplotlib.pyplot画图并导出保存的实例
2019/12/07 Python
tensorflow 实现从checkpoint中获取graph信息
2020/02/10 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
pandas to_excel 添加颜色操作
2020/07/14 Python
Flask中sqlalchemy模块的实例用法
2020/08/02 Python
python如何实现图片压缩
2020/09/11 Python
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
教师个人培训总结
2015/02/11 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技
MySQL主从搭建(多主一从)的实现思路与步骤
2021/05/13 MySQL
Python数据分析之pandas读取数据
2021/06/02 Python
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python
业余无线电通联Q语
2022/02/18 无线电
Centos系统通过Docker安装并搭建MongoDB数据库
2022/04/12 MongoDB
Go语言安装并操作redis的go-redis库
2022/04/14 Golang
详解Nginx的超时keeplive_timeout配置步骤
2022/05/25 Servers