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

 更新时间:2014年09月18日 10:43:57   作者:钿畑  
这篇文章主要介绍了python处理PHP数组文本文件实例,本文的PHP数组文本是多个redis数据库的配置文件,需求是提取相关参数组合成Shell命令,需要的朋友可以参考下

需求:

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

复制代码 代码如下:

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"]

相关文章

  • Pandas中Series的创建及数据类型转换

    Pandas中Series的创建及数据类型转换

    这篇文章主要介绍了Pandas中Series的创建及数据类型转换,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • 教你使用python搭建一个QQ机器人实现叫起床服务

    教你使用python搭建一个QQ机器人实现叫起床服务

    这篇文章主要介绍了教你使用python搭建一个QQ机器人实现叫起床服务,作为一个程序猿如果没有女朋友叫你起床,那么就自己制作一个,如果有那么也可以帮你叫女朋友起床
    2021-08-08
  • Python3安装tensorflow及配置过程

    Python3安装tensorflow及配置过程

    TensorFlow 是一个端到端开源机器学习平台,能够帮助开发者快速轻松的构建和部署由机器学习提供应用,对Python3安装tensorflow的相关知识感兴趣的朋友一起学习下吧
    2021-05-05
  • Pytorch固定随机数种子的方法小结

    Pytorch固定随机数种子的方法小结

    在对神经网络模型进行训练时,有时候会存在对训练过程进行复现的需求,然而,每次运行时 Pytorch、Numpy 中的随机性将使得该目的变得困难重重,基于此,本文记录了 Pytorch 中的固定随机数种子的方法,需要的朋友可以参考下
    2023-12-12
  • Python 概率生成问题案例详解

    Python 概率生成问题案例详解

    这篇文章主要介绍了Python 概率生成问题案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • python进程间通信的项目实践

    python进程间通信的项目实践

    本文主要介绍了python进程间通信的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Pytorch BCELoss和BCEWithLogitsLoss的使用

    Pytorch BCELoss和BCEWithLogitsLoss的使用

    这篇文章主要介绍了Pytorch BCELoss和BCEWithLogitsLoss的使用详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 如何将python文件打包成exe可运行文件

    如何将python文件打包成exe可运行文件

    这篇文章主要介绍了将python文件打包成exe可运行文件的步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • python 三边测量定位的实现代码

    python 三边测量定位的实现代码

    这篇文章主要介绍了python 三边测量定位的实现代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • django自带的权限管理Permission用法说明

    django自带的权限管理Permission用法说明

    这篇文章主要介绍了django自带的权限管理Permission用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论