我是靠谱客的博主 背后白猫,最近开发中收集的这篇文章主要介绍python调用shell命令 批量执行python程序一、问题背景二、不需要获取shell返回结果的三、需要获取返回结果的,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
一、问题背景
学生写了一个计算器程序test.py,我要去测上面这个5个命令是否能够获得正确的结果
我想写一个python代码,包含上面5个命令,并输出给我看结果,可以实现吗?
二、不需要获取shell返回结果的
使用
os.system(command)
新建judge.py
# -*- coding: utf-8 -*-
import os
os.system("python3 test.py "1 + 2 - 3 + 4"")
os.system("python3 test.py "1 + 2 - 3 + 1 / 3"")
os.system("python3 test.py "1 + + 2"")
os.system("python3 test.py "1 / 0"")
os.system("python3 test.py "a + 1"")
三、需要获取返回结果的
我不想用眼睛比较结果是否正确,想让代码自动比较结果是否正确。
但是os.system返回值: 0、1、-1等int的数字.
可以使用
subprocess.Popen("command", stdout=subprocess.PIPE, shell=True).stdout.readlines()
# -*- coding: utf-8 -*-
import os
import subprocess
resp = subprocess.Popen("python3 test.py "1 + 2 - 3 + 4"", stdout=subprocess.PIPE, shell=True).stdout.readlines()
print(resp)
os.system("python3 test.py "1 + 2 - 3 + 4"")
os.system("python3 test.py "1 + 2 - 3 + 1 / 3"")
os.system("python3 test.py "1 + + 2"")
os.system("python3 test.py "1 / 0"")
os.system("python3 test.py "a + 1"")
可以再写几行代码提取一下
最后
以上就是背后白猫为你收集整理的python调用shell命令 批量执行python程序一、问题背景二、不需要获取shell返回结果的三、需要获取返回结果的的全部内容,希望文章能够帮你解决python调用shell命令 批量执行python程序一、问题背景二、不需要获取shell返回结果的三、需要获取返回结果的所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复