python处理PHP数组文本文件实例


Posted in Python onSeptember 18, 2014

需求:

对一个配置文件进行处理,拿出可用的字符来拼接,下面是原始文本,我们要得到这样的结果,

redis -h 127.0.0.1 -p 6379 | select 2

redis -h 127.0.0.1 -p 6379 | select 16

redis -h 127.0.0.1 -p 6379 | select 8

原始文本:

    'redis_list' => array(

        'normal' => array(

            'host' => '10.4.3.125',

            'port' => 6405,

            'db' => 6

        ),  

    'redis_list' => array(

        'normal' => array(

            'host' => '127.0.0.1',

            'port' => 6379,

            'db' => 2

        ),  

    'redis_list' => array(

        'normal' => array(

            'host' => '127.0.0.1',

            'port' => 6379,

            'db' => 16

        ),  

    'redis_list' => array(

        'normal' => array(

            'host' => '127.0.0.1',

            'port' => 6379,

            'db' => 8

        ),

上python:

#!/usr/bin/env python

#coding=utf-8

import os
file=open("redis_list.txt", "r")

file_content=file.read()

php_array=file_content.replace("'normal' => array(","")

pstr = php_array.replace(" ","").replace("\r","").replace("\n", "").replace("\t", "").replace("(", "").replace("'", "").replace("),", "")

#print pstr

pstr_list = pstr.split("redis_list=>array")

#print type(pstr_list)
cf_param = []

for i in pstr_list:

 if i:

  ## 'host'=>'127.0.0.1','port'=>6411,'db'=>2

  i_list = i.split(",")

  if len(i_list)==3:

   op = {};

   for ii in i_list:

    ii_list = ii.split("=>")

    if len(ii_list) == 2:

     op[ii_list[0]] = ii_list[1]

   cf_param.append(op)
for i in cf_param:

    print "redis -h "+i["host"] + " -p "+i["port"] +"|select" +" "+i["db"]
Python 相关文章推荐
Python字符串的encode与decode研究心得乱码问题解决方法
Mar 23 Python
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
python脚本实现xls(xlsx)转成csv
Apr 10 Python
Python快速排序算法实例分析
Nov 29 Python
pycharm远程开发项目的实现步骤
Jan 20 Python
对python实现模板生成脚本的方法详解
Jan 30 Python
Python logging设置和logger解析
Aug 28 Python
tensorflow2.0保存和恢复模型3种方法
Feb 03 Python
python 线程的五个状态
Sep 22 Python
pytorch 把图片数据转化成tensor的操作
Mar 04 Python
Python道路车道线检测的实现
Jun 27 Python
Pandas数据类型之category的用法
Jun 28 Python
Python threading多线程编程实例
Sep 18 #Python
Python中捕捉详细异常信息的代码示例
Sep 18 #Python
python字符串连接的N种方式总结
Sep 17 #Python
Python实现的检测web服务器健康状况的小程序
Sep 17 #Python
python写的一个squid访问日志分析的小程序
Sep 17 #Python
python进程管理工具supervisor使用实例
Sep 17 #Python
Python实现备份文件实例
Sep 16 #Python
You might like
创建数据库php代码 用PHP写出自己的BLOG系统
2010/04/12 PHP
php中session过期时间设置及session回收机制介绍
2014/05/05 PHP
PHP实现动态柱状图改进版
2015/03/30 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
php安装ssh2扩展的方法【Linux平台】
2016/07/20 PHP
php判断用户是否关注微信公众号
2016/07/22 PHP
PHP + plupload.js实现多图上传并显示进度条加删除实例代码
2017/03/06 PHP
PHP文件上传小程序 适合初学者学习!
2019/05/23 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
Aptana调试javascript图解教程
2009/11/30 Javascript
用Javascript实现Sleep暂停功能代码
2010/09/03 Javascript
javascript suggest效果 自动完成实现代码分享
2012/02/17 Javascript
javascript实现实时输出当前的时间
2015/04/27 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
Easyui form combobox省市区三级联动
2016/01/13 Javascript
jQuery实现ToolTip元素定位显示功能示例
2016/11/23 Javascript
详解angular脏检查原理及伪代码实现
2018/06/08 Javascript
深入理解Vue router的部分高级用法
2018/08/15 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
基于vue实现圆形菜单栏组件
2019/07/05 Javascript
vue实现列表滚动的过渡动画
2020/06/29 Javascript
js实现缓动动画
2020/11/25 Javascript
Python 文件操作实现代码
2009/10/07 Python
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
2015/02/04 Python
python实现自动发送报警监控邮件
2018/06/21 Python
python dataframe向下向上填充,fillna和ffill的方法
2018/11/28 Python
浅析python redis的连接及相关操作
2019/11/07 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
python+opencv3.4.0 实现HOG+SVM行人检测的示例代码
2021/01/28 Python
美国时尚女装在线:Missguided
2016/12/03 全球购物
怎么处理XML的中文问题
2015/03/26 面试题
医学院学生的自我评价分享
2013/11/19 职场文书
教育系统干部作风整顿心得体会
2014/09/09 职场文书
管理失职检讨书
2015/05/05 职场文书
肖申克的救赎观后感
2015/06/02 职场文书