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 openpyxl模块原理及用法解析

Python openpyxl模块原理及用法解析

这篇文章主要介绍了Python openpyxl模块原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 此模块不是Pytho...

如何使用Python实现斐波那契数列

如何使用Python实现斐波那契数列

斐波那契数列(Fibonacci)最早由印度数学家Gopala提出,而第一个真正研究斐波那契数列的是意大利数学家 Leonardo Fibonacci,斐波那契数列的定义很简单,用数学函...

在Django的URLconf中使用命名组的方法

在我们想要捕获的URL部分上加上小括号,Django 会将捕获的文本作为位置参数传递给视图函数。 在更高级的用法中,还可以使用 命名 正则表达式组来捕获URL,并且将其作为关键字参数传给...

Python进程池Pool应用实例分析

本文实例讲述了Python进程池Pool应用。分享给大家供大家参考,具体如下: 当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程...

对numpy中array和asarray的区别详解

array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会。 举例...