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中的rfind()方法使用详解

 rfind()方法返回所在子str 被找到的最后一个索引,或者-1,如果没有这样的索引不存在,可选择限制搜索字符串string[beg:end]. 语法 以下是rfind()...

Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录

简介: MongoEngine 是一个Document-Object Mapper (想一下ORM, 但它是针对文档型数据库),Python通过它与MongoDB交互。你可能会说那PyM...

python+pandas+时间、日期以及时间序列处理方法

先简单的了解下日期和时间数据类型及工具 python标准库包含于日期(date)和时间(time)数据的数据类型,datetime、time以及calendar模块会被经常用到。 dat...

Python设计模式之外观模式实例详解

Python设计模式之外观模式实例详解

本文实例讲述了Python设计模式之外观模式。分享给大家供大家参考,具体如下: 外观模式(Facade Pattern):为子系统中的一组接口提供一个一致界面,此模式定义一个高层接口,使...

在Python中操作文件之truncate()方法的使用教程

 truncate()方法截断该文件的大小。如果可选的尺寸参数存在,该文件被截断(最多)的大小。 大小默认为当前位置。当前文件位置不改变。注意,如果一个指定的大小超过了文件的当...