zoukankan      html  css  js  c++  java
  • weibo_json

    f_in = open("in.txt", "r")
    f_out = open("out.txt", "w")
    INDENT = 4
    brace_count = 0#number of {
    bracket_count=0
    write_for_brakcet = False
    for line in f_in:
        for i in range(len(line)):
            if write_for_brakcet:
                if line[i]==']':
                    write_for_brakcet = False
                f_out.write(line[i])
                continue
            if line[i]=='{':
                brace_count = brace_count + 1
                f_out.write('{\n'+' '*INDENT*(brace_count+bracket_count))            
            elif line[i]=='[':           
                if line[i+1]=='{':
                    bracket_count = bracket_count + 1
                    f_out.write('[\n'+' '*INDENT*(brace_count+bracket_count))
                else:
                    write_for_brakcet = True
                    f_out.write('[')
            elif line[i]=='}':
                brace_count = brace_count - 1
                if i<len(line)-1 and line[i+1]==',':
                    f_out.write('}')
                elif i<len(line)-1 and line[i+1]==']':
                    f_out.write('}\n'+' '*INDENT*(brace_count+bracket_count-1))
                else:
                    f_out.write('}\n'+' '*INDENT*(brace_count+bracket_count))
            elif line[i]==']':
                bracket_count = bracket_count - 1
                if i<len(line)-1 and line[i+1]=='}':
                    f_out.write(']\n'+' '*INDENT*(brace_count+bracket_count-1))
                else:
                    f_out.write(']\n'+' '*INDENT*(brace_count+bracket_count))
            elif line[i]==',':
                if line[i+1]=='}':
                    f_out.write(','+' '*INDENT*(brace_count+bracket_count))
                else:
                    f_out.write(',')
            elif line[i]==' ' and line[i-1]==',':
                f_out.write('\n'+' '*INDENT*(brace_count+bracket_count))
            elif i<len(line)-1 and line[i+1]=='}':
                f_out.write(line[i]+'\n'+' '*INDENT*(brace_count+bracket_count-1))
            else:
                f_out.write(line[i])
    f_in.close()
    f_out.close()
  • 相关阅读:
    HDU 1874 畅通工程续 (Dijkstra , Floyd , SPFA, Bellman_Ford 四种算法)
    HDU Wooden Sticks
    HDU 3664 Permutation Counting
    javascript DOM添加元素,使用节点属性
    SQL server查询数据类型为ntext是空或NULL值
    TSQL Pivot Tables(行列转换) in SQL Server 2005/2008
    ASP.NET 3.5(c#)区域化设置(LCID)
    Sql 脚本导入EXCEL数据
    asp.net 3.5 csharp 实现事务
    asp.net3.5 csharp: How to show HTML content in calendar tooltip?
  • 原文地址:https://www.cnblogs.com/haoqingchuan/p/2938933.html
Copyright © 2011-2022 走看看