Python脚本实现格式化css文件

 更新时间:2015年04月08日 09:14:29   投稿:junjie  
这篇文章主要介绍了Python脚本实现格式化css文件,本文直接给出实现代码,实现把压缩后的CSS文件转换成正常可读的CSS格式,需要的朋友可以参考下

最近研究研究了css,少不了去网上分析一下别人的网页, 但很多网站的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 cssformat.py  待转换的文件名 > 转换后保存的文件

相关文章

  • Python实现求解斐波那契第n项的解法(包括矩阵乘法+快速幂)

    Python实现求解斐波那契第n项的解法(包括矩阵乘法+快速幂)

    这篇文章主要介绍怎么使用Python求解斐波那契第n项,方法多样,逻辑清晰,代码简单详细,有这方面需要的朋友可以参考下
    2021-04-04
  • Python学习之str重要函数

    Python学习之str重要函数

    这篇文章主要介绍了Python str重要函数,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-10-10
  • python正则表达式re.group()用法

    python正则表达式re.group()用法

    本文主要介绍了python正则表达式re.group()用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • 基于PyQT5制作一个桌面摸鱼工具

    基于PyQT5制作一个桌面摸鱼工具

    这篇文章主要介绍了如何利用PyQT5制作一个桌面摸鱼工具,利用摸鱼,打开小说,可实行完美摸鱼,实时保存进度,快来跟随小编一起动手试一试吧
    2022-02-02
  • 使用python创建极坐标平面的示例代码

    使用python创建极坐标平面的示例代码

    PolarPlane 是 Manim(一个用于数学动画的Python库)中的一个类,用于创建极坐标平面,与笛卡尔坐标系不同,极坐标系是基于角度和半径来定位点的,本文就给大家介绍如何用python创建极坐标平面,需要的朋友可以参考下
    2024-08-08
  • Python函数参数基础介绍及示例

    Python函数参数基础介绍及示例

    在声明函数的时候,一般会根据函数所要实现的功能来决定函数是否需要参数。在多数情况下,我们声明的函数都会使用到参数,这篇文章主要介绍了Python函数参数
    2022-08-08
  • python文件读写操作小结

    python文件读写操作小结

    python文件对象提供了三个“读”方法: read()、readline() 和 readlines(),每种方法可以接受一个变量以限制每次读取的数据量,这篇文章主要介绍了python文件读写小结,需要的朋友可以参考下
    2022-02-02
  • Pandas封装Excel工具类的方法步骤

    Pandas封装Excel工具类的方法步骤

    本文主要介绍了Pandas封装Excel工具类的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • python输入错误后删除的方法

    python输入错误后删除的方法

    在本篇文章里小编给读者们整理了关于python输入错误后删除的方法以及相关知识点,有兴趣的朋友们学习下。
    2019-10-10
  • Python 实现自动导入缺失的库

    Python 实现自动导入缺失的库

    这篇文章主要介绍了Python 实现自动导入缺失的库,解决导入 Python 库失败的问题,本文分三种情况给大家介绍,需要的朋友可以参考下
    2019-10-10

最新评论