1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Martin-word-crawler_related

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
json.py 2.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Martin Отправлено 05.01.2019 18:05 349a762
# 定义数组
add = ['{', '['] # 表示需要增加 换行符 的字符
rem = ['}', ']'] # 表示需要减少 换行符 的字符
br = [';', ','] # 该数组表示需要 换行 的字符
kill = [' ', '\n', '\t', '\r'] # 该数组表示需要 清洗 的字符
def tab(num): # tab 函数 专门用于返回指定数量的 tab键
tb = '' # python 不支持 None 文本相加 所以要定义一个 ''
for i in range(num): # 有多少 tab 循环多少遍
tb = tb + '\t'
return tb # 返回 tab文本 信息
def text_clear(str): # 文本清洗
text = '' # 同理
for i in str: # 遍历本文
if i in kill: # 如果该文本存在于 kill 数组 则本次操作放弃
pass
else: # 未存在于该数组 将文本加入待输出
text = text + i
return text # 返回清洗后数据
def json(str): # json 清洗本体
str = text_clear(str) # 先将进入本函数的文本进行清洗
tab_number = 0 # 默认初始 tab 为0
text = '' # 默认初始 文本 为空
for i in range(len(str)): # 遍历本文
if str[i] in add and str[i + 1] not in rem: # 如果文本存在于 增加换行符 数组
tab_number += 1 # tab键 +1
text = text + str[i] + '\r\n' + tab(tab_number) # 执行 换行符 or 缩进
elif str[i] in rem and str[i - 1] not in add: # 如果文本存在于 减少换行符 数组
tab_number -= 1 # tab键 -1
text = text + '\r\n' + tab(tab_number) + str[i] # 执行 换行符 or 缩进
elif str[i] in br: # 如果文本存在与 换行 数组
text = text + str[i] + '\r\n' + tab(tab_number) # 执行 换行
else: # 文本不存在上述数组 直接添加文本
text = text + str[i]
return text # 返回文本数据

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/Martin-word-crawler_related.git
git@api.gitlife.ru:oschina-mirror/Martin-word-crawler_related.git
oschina-mirror
Martin-word-crawler_related
Martin-word-crawler_related
master