python "a=***&b=***&c=***" 类的 append 字符串转化为 json 字符串

"a=&b=&c=***" 这种追加字符串在网络协议里面很常见:


现在有需求将其转换为双重链表或者 json 格式的字符串,一般有需求当然先谷歌,可是这种字符串也不知道学名是啥,所以问题不太好描述,那么只能自己动手了。
其实用 python 处理的话,逻辑并不复杂,为了方便有相同需要的同学直接放代码吧。

import copy
import logging
import traceback

logging.basicConfig(filename=__name__ + '.log')

def appendStr2JsonStr(src, itemSplitFlag='&', keyWordSplitFlag='='):
    try:
        jsonRet = "{"

        # 分割各项
        items = src.split(itemSplitFlag)
        itemNames = list(items)

        # 分割键值
        for index in range(len(items)):
            tmpItem = items[index]
            itemNamesIndex = tmpItem.find(keyWordSplitFlag)
            itemNames[index] = tmpItem[0:itemNamesIndex]
            items[index] = tmpItem[itemNamesIndex + 1:]

        # 拼接 json 字符串
        for index in range(len(items)):
            jsonRet += ('\"' + itemNames[index] + '\":\"' + items[index] + '\", ')
        jsonRet = jsonRet[:-2]
        jsonRet += '}'

        return jsonRet
    except BaseException, e:
        s = traceback.format_exc()
        logging.error(s)
        return None

def appendStr2StrList(src, itemSplitFlag='&', keyWordSplitFlag='='):
    try:
        retList = []
        tmpList = []

        # 分割各项
        items = src.split(itemSplitFlag)
        itemNames = list(items)

        # 分割键值
        for index in range(len(items)):
            tmpItem = items[index]
            itemNamesIndex = tmpItem.find(keyWordSplitFlag)
            itemNames[index] = tmpItem[0:itemNamesIndex]
            items[index] = tmpItem[itemNamesIndex + 1:]

        # 拼接双重链表
        for index in range(len(items)):
            tmpList[:] = []
            tmpList.append(itemNames[index])
            tmpList.append(items[index])
            retList.append(copy.deepcopy(tmpList))

        return retList
    except BaseException, e:
        s = traceback.format_exc()
        logging.error(s)
        return None

效果图:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容