当前位置: 首页 > java >正文

python 将字典的值替换为键名作为变量名的形式(带缩进)

 

def convert_dict_to_variable_format(input_dict, indent=4, level=0):"""将字典的值替换为键名作为变量名的形式(带缩进)参数:input_dict: 输入字典indent: 缩进空格数level: 当前缩进层级返回:格式化的字符串表示"""indent_str = ' ' * (level * indent)next_level = level + 1next_indent_str = ' ' * (next_level * indent)items = []for key, value in input_dict.items():if isinstance(value, dict):# 递归处理嵌套字典processed_value = convert_dict_to_variable_format(value, indent, next_level)items.append(f'{next_indent_str}"{key}": {processed_value}')else:# 直接使用键名作为变量名items.append(f'{next_indent_str}"{key}": {key}')# 构建最终字符串result = "{\n" + ",\n".join(items) + "\n" + indent_str + "}"return resultif __name__ == '__main__':# 测试数据test_dict = {"no": "123","data": {"phone1": "1382988719","age": 18,"gender": "male","email": None,},"code": "S0000","Operation": True}# 转换并打印结果(带缩进)converted = convert_dict_to_variable_format(test_dict, indent=2)print(converted)

http://www.xdnf.cn/news/14411.html

相关文章:

  • 基于51单片机的直流电动控制速度系统proteus仿真
  • leetcode 分割回文串 java
  • 总结用ubuntu一直以来遇到的问题
  • 加盐加密算法
  • 浏览器基础及缓存
  • 【Linux】Linux 信号驱动I/O
  • Git 配置 SSH 密钥与私钥教程(跨平台完整指南)
  • 京东API接口最新指南:店铺所有商品接口的接入与使用
  • 易语言模拟真人鼠标轨迹算法 - 非贝塞尔曲线
  • 大模型的开发应用(十一):对话风格微调项目(下):微调与部署
  • 《AI辅助编程:从零掌握核心逻辑》工作坊开业
  • mysql修改密码笔记
  • 基于51单片机的智能小车:按键调速、障碍跟踪、红外循迹与数码管显示(一个合格的单片机课设)
  • 浙江康冠锁业携智能锁具亮相2025上海国际快递物流展
  • 山东大学软件学院创新项目实训开发日志——第十七周(二)
  • 【C语言扩展识别实数负数】2022-5-29
  • Web第二次方向考核复盘
  • OpenHarmony 5.0读取文件并写入到另一份文件(公共文件夹),并保持原先的格式以及编码类型
  • 论文略读:Does Refusal Training in LLMs Generalize to the Past Tense?
  • Hierarchical Vector Quantization for Unsupervised Action Segmentation
  • 介质访问控制——随机访问控制
  • Java的DI依赖注入
  • 2025如何快速给人物模型添加骨骼
  • 【Python机器学习(一)】NumPy/Pandas手搓决策树+使用Graphviz可视化(以西瓜书数据集为例)
  • 【深度剖析】领信卓越:福耀玻璃的数字化转型(上篇2:转型动机分析)
  • 嵌入式知识篇---三种坐标系
  • 揭开肾细胞的分子密码:当 METTL3 遇上 FOSL1【AbMole】
  • Android 与 ESP-01 WIFI模块通信
  • Tomcat 配置双击启动
  • 141. 环形链表