python和shell变量互相传递的几种方法


Posted in Python onNovember 20, 2013

python -> shell:

1.环境变量

import os  
var=123或var='123'
os.environ['var']=str(var)  #environ的键值必须是字符串   
os.system('echo $var') 
import os  
var=123或var='123'
os.environ['var']=str(var)  #environ的键值必须是字符串  
os.system('echo $var')

2.字符串连接

import os  
path='/root/a.txt'
var=[1]  
var='bash'
os.system('echo ' + path)                  #注意echo后有空格   
os.system('echo ' + str(var[0]))  
os.system('echo ' + var + ' /root/c.sh') #注意echo后和/root前有空格  
import os  
path='/root/a.txt'
var=[1]  
var='bash'
os.system('echo ' + path)                  #注意echo后有空格  
os.system('echo ' + str(var[0]))  
os.system('echo ' + var + ' /root/c.sh') #注意echo后和/root前有空格  

3.通过管道

import os  
var='123'
os.popen('wc -c', 'w').write(var) 
import os  
var='123'
os.popen('wc -c', 'w').write(var) 

4.通过文件

output = open('/tmp/mytxt', 'w')  
output.write(S)      #把字符串S写入文件   
output.writelines(L) #将列表L中所有的行字符串写到文件中   
output.close() 
output = open('/tmp/mytxt', 'w')  
output.write(S)      #把字符串S写入文件  
output.writelines(L) #将列表L中所有的行字符串写到文件中  
output.close() 

5.通过重定向标准备输出

buf = open('/root/a.txt', 'w')  
print >> buf, '123\n', 'abc'
buf = open('/root/a.txt', 'w')  
print >> buf, '123\n', 'abc'

print >> open('/root/a.txt', 'w'), '123\n', 'abc' #写入或生成文件   
print >> open('/root/a.txt', 'a'), '123\n', 'abc' #追加 
print >> open('/root/a.txt', 'w'), '123\n', 'abc' #写入或生成文件  
print >> open('/root/a.txt', 'a'), '123\n', 'abc' #追加 

shell -> python:

1.管道

import os  
var=os.popen('echo -n 123').read( )  
print var 
import os  
var=os.popen('echo -n 123').read( )  
print var 

2.

import commands  
var=commands.getoutput('echo abc')       #输出结果   
var=commands.getstatusoutput('echo abc') #退出状态和输出结果 
import commands  
var=commands.getoutput('echo abc')       #输出结果  
var=commands.getstatusoutput('echo abc') #退出状态和输出结果 

3.文件

input = open('/tmp/mytxt', 'r')  
S = input.read( )      #把整个文件读到一个字符串中   
S = input.readline( )  #读下一行(越过行结束标志)   
L = input.readlines( ) #读取整个文件到一个行字符串的列表中 
input = open('/tmp/mytxt', 'r')  
S = input.read( )      #把整个文件读到一个字符串中  
S = input.readline( )  #读下一行(越过行结束标志)  
L = input.readlines( ) #读取整个文件到一个行字符串的列表中 

Python 相关文章推荐
Python 正则表达式入门(中级篇)
Dec 07 Python
利用python画一颗心的方法示例
Jan 31 Python
python实现批量注册网站用户的示例
Feb 22 Python
python实现QQ空间自动点赞功能
Apr 09 Python
numpy.where() 用法详解
May 27 Python
python3的print()函数的用法图文讲解
Jul 16 Python
python plotly绘制直方图实例详解
Jul 22 Python
pytorch torch.expand和torch.repeat的区别详解
Nov 05 Python
使用 pytorch 创建神经网络拟合sin函数的实现
Feb 24 Python
Django Channel实时推送与聊天的示例代码
Apr 30 Python
用python实现一个简单计算器(完整DEMO)
Oct 14 Python
Python用SSH连接到网络设备
Feb 18 Python
利用soaplib搭建webservice详细步骤和实例代码
Nov 20 #Python
python从ftp下载数据保存实例
Nov 20 #Python
python正则表达式抓取成语网站
Nov 20 #Python
python爬取网站数据保存使用的方法
Nov 20 #Python
使用python搭建Django应用程序步骤及版本冲突问题解决
Nov 19 #Python
python解析json实例方法
Nov 19 #Python
python聊天程序实例代码分享
Nov 18 #Python
You might like
PHP中的按位与和按位或操作示例
2014/01/27 PHP
PHP ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
浅析php原型模式
2014/11/25 PHP
PHP扩展开发入门教程
2015/02/26 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
基于jQuery的计算文本框字数的代码
2012/06/06 Javascript
二叉树的非递归后序遍历算法实例详解
2014/02/07 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
javascript实现根据时间段显示问候语的方法
2015/06/18 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
JS基于封装函数实现的表格分页完整示例
2018/06/26 Javascript
angular4笔记系列之内置指令小结
2018/11/09 Javascript
vue自定义指令实现方法详解
2019/02/11 Javascript
JS图片懒加载的优点及实现原理
2020/01/10 Javascript
javascript 模块依赖管理的本质深入详解
2020/04/30 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
简化Python的Django框架代码的一些示例
2015/04/20 Python
Python实现队列的方法
2015/05/26 Python
Python的装饰器使用详解
2017/06/26 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
Python 错误和异常代码详解
2018/01/29 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
2019/06/03 Python
Django密码系统实现过程详解
2019/07/19 Python
Django与AJAX实现网页动态数据显示的示例代码
2021/02/24 Python
HTML5 transform三维立方体实现360无死角三维旋转效果
2014/08/22 HTML / CSS
SEPHORA新西兰官方网站:购买化妆品和护肤品
2016/12/02 全球购物
加拿大领先的冒险和户外零售商:Atmosphere
2017/12/19 全球购物
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
学前教育专业毕业生自荐信
2013/10/03 职场文书
外语专业毕业生自我评价分享
2013/10/05 职场文书
协议书的格式
2014/04/23 职场文书
业务内勤岗位职责
2014/04/30 职场文书
迎新晚会策划方案
2014/06/13 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
用Java实现简单计算器功能
2021/07/21 Java/Android