专栏首页git个人代码

个人代码

import json, time


# 读取字典
def openDists():
    with open("demo2.json", encoding="utf-8") as f:
        # print(f)
        data = json.load(f)
    return data


print(openDists())


# 把字典写成json文件
def wjson(data):
    with open("demo2.json", "w", encoding='utf-8') as f:
        json.dump(data, f, indent=2, sort_keys=True, ensure_ascii=False)


# 删除
def delDicts(picName, groupId):
    data = openDists()
    keys = list(data.keys())
    if str(groupId) in keys:
        slist = data[str(groupId)]
        newKey = str(time.time()).replace('.', '')
        if picName + '.jpg' in slist:
            slist.remove(picName + '.jpg')
            if picName + '.jpg' in slist:
                return 'value值已存在'
            else:
                data[str(newKey)] = [picName + '.jpg']
                wjson(data)
                return "删除成功"
        elif picName + '.png' in slist:
            slist.remove(picName + '.png')
            if picName + '.png' in slist:
                return 'value值已存在'
            data[str(newKey)] = [picName + '.png']
            wjson(data)
            return "删除成功"
        else:
            return 'value值不存在'
    else:
        return 'key值不存在'


# 添加
def addDists(picName, newGroupId):
    data = openDists()
    keys = list(data.keys())
    if str(newGroupId) not in keys:
        values = list(data.values())
        if picName + ".jpg" not in values:
            for i in values:
                if picName + ".jpg" in i:
                    return 'value已存在'
            else:
                value1 = list(data.values())
                print("---", value1)
                data[str(newGroupId)] = [picName + ".jpg"]
                wjson(data)
                return '添加成功'
        elif picName + ".png" not in values:
            for i in values:
                if picName + ".png" in i:
                    return 'value已存在'
            else:
                data[str(newGroupId)] = [picName + ".png"]
                wjson(data)
                return '添加成功'
        else:
            return 'value 值已存在'
    else:
        return 'key值已存在'


# 合并
def innerDist(oldgroupId, newGroupId):
    data = openDists()
    keys = list(data.keys())
    newKey = str(time.time()).replace('.', '')

    if (oldgroupId in keys and newGroupId not in keys) or (oldgroupId not in keys and newGroupId in keys):
        return None
    elif oldgroupId in keys and newGroupId in keys:
        oldList = data[oldgroupId]
        newList = data[newGroupId]
        # 合并列表
        inList = list(set(oldList + newList))
        # 删除字典之前的值
        del data[oldgroupId]
        del data[newGroupId]
        data[newKey] = inList
        wjson(data)
        return '合并成功'
    else:
        return "key值不存在"


print(innerDist("15754389403840292", "10"))
# print(delDicts('11', 4))
# print(addDists("220", 15))

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • requests+pyquery+multiprocessing爬虫

    用户2337871
  • 异步爬虫+asyncio+python3.7+(async + await )

    用户2337871
  • linux`操作文本的三大利器

    awk、grep、sed是linux操作文本的三大利器,也是必须掌握的linux命令之一。三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也...

    用户2337871
  • 计算机网络之传输层-复用与分解

    多路复用: 在源主机, 传输层协议从不同的套接字收集应用进程发送的数据块, 并为每个数据块封装上首部信息( 包括用于分解的信息) 构成报文段, 然后将报文段传递...

    越陌度阡
  • Quartz2D复习(四) --- 图层CALayer和动画CAAnimation

    1)、在ios中,能看得见摸得着的东西基本上都是UIView, 比如按钮、文本标签、文本输入框、图标等,这些都是UIView

    tandaxia
  • 白夜追凶 :手 Q 图片的显示和发送逻辑

    本文整理总结了手 q 中图片的显示和发送逻辑,以及对透明通道图片的特殊处理。

    豆豆的包包
  • Python 输入时间字符串以分钟单位计算时间差

    之前转载过一篇使用python dateTime模块处理时间差的文章,文章中讲解了如何按照days,hours和seconds单位来计算时间差。这里讲解一下如何...

    我是李超人
  • How to make the message displayed for only a given times in UI

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.bl...

    Jerry Wang
  • leetcode: 70. Climbing Stairs

    JNingWei
  • 今天有人问我可以直接离线一个完整的网站吗?有没有什么工具之类的?我推荐一款:Httrack (网站复制机)案例:离线你的博客园

    搞安全的朋友这款工具可能用的比较多,毕竟信息收集阶段还是很必须的,这篇文章主要讲一下离线你的博客园案例 官网:http://www.httrack.com/ 里...

    逸鹏

扫码关注云+社区

领取腾讯云代金券