Python格式化css文件的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python格式化css文件的方法。分享给大家供大家参考。具体实现方法如下:

import string, sys
import re, StringIO
TAB=4
def format(ss):
  f = open (ss, "r")
  data = f.read()
  f.close()
  dlen = len(data)
  i = 0
  buf = StringIO.StringIO()
  start = 0
  while i < dlen:
    if data[i] == '{':
      buf.write(data[start:i] + ' { ')
      i = i + 1
      start = i
    elif data[i] == '}':
      last = string.strip(data[start:i])
      if last:
        buf.write(' '*TAB + last + ';')
      buf.write(' } ')
      i = i + 1
      start = i
    elif data[i] == ';':
      line = string.strip(data[start:i])
      buf.write(' '*TAB + line + '; ')
      i = i + 1
      start = i
    else:
      i = i + 1
  buf.write(data[start:i+1])
  return buf.getvalue()
if __name__ == '__main__':
  if len(sys.argv) == 1:
    print 'usage: cssformat.py filename'
    sys.exit()
  ret = format(sys.argv[1])
  print ret

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python实现数通设备端口监控示例

最近因工作需要,上面要求,每天需上报运维的几百数通设备端口使用情况【】,虽然有现成网管监控工具监控设备状态,但做报表,有点不方便,特写了个小脚本。注:测试运行于ubuntn,需安装snm...

python开发之for循环操作实例详解

本文实例讲述了python开发之for循环操作。分享给大家供大家参考,具体如下: 下面是我做的一些学习记录供大家参考: #基本的for循环语句 test_list = [2,"Jon...

python 单线程和异步协程工作方式解析

在python3.4之后新增了asyncio模块,可以帮我们检测IO(只能是网络IO【HTTP连接就是网络IO操作】),实现应用程序级别的切换(异步IO)。注意:asyncio只能发tc...

python队列通信:rabbitMQ的使用(实例讲解)

python队列通信:rabbitMQ的使用(实例讲解)

(一)、前言 为什么引入消息队列? 1.程序解耦 2.提升性能 3.降低多业务逻辑复杂度 (二)、python操作rabbit mq rabbitmq配置安装基本使用参见上节文章,不再复...

Django基础知识 URL路由系统详解

Django基础知识 URL路由系统详解

MVC和MTV框架 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在...