python代码实现xmind思维导图转换为excel功能

目录

一 转换前xmind示例

二 运行代码转换后excel示例

三 python代码示例


一 转换前xmind示例

二 运行代码转换后excel示例

如果想要合并单元格内容,在后面一列参考输入

=B2&C2&D2&E2

三 python代码示例

from xmindparser import xmind_to_dict
import pandas as pd
from openpyxl.workbook import Workbook

# 可以设想为一个树结构,利用递归函数,获取由根至各叶子节点的路径。
def xm_parse(dic, pre_data=[]):
    """输入一个由xmindparser,转换而来的字典形式的数据,将之转换成列表"""
    title_list = []
    topic_list = []
    try:
        topics = dic.get("topics")
        title = dic.get("title")
        # 将前缀追加
        title_list.append(title)
        title_list = pre_data + title_list
        # 如果到达末尾,就返回
        if topics is None and title:
            yield title, title_list
#             print(title,title_list)
            return
        # 如果是列表,就暂存起来(若每个对象为标准的列表,即 topics= topic_list,则可以跳过该步骤)
        elif isinstance(topics, list) and title:
            for topic in topics:
                topic_list.append(topic)
    except AttributeError as e:
        print("异常结束")
        return
    if topic_list:
        for topic in topic_list:
            yield from xm_parse(topic,title_list)


def main():
    x_flie=r"转换excel前.xmind"
    out_file=r"xmind转换后3.xlsx"
    temp=[]
    max_cols=0
    json_data= xmind_to_dict(x_flie)
    #提取数据,并找出最大深度(列数)
    for i,j in xm_parse(json_data[0]['topic']):
        temp.append(j)
        max_cols= max_cols if max_cols > len(j) else len(j)
    #对缺失数据采用补全
    for i in range(len(temp)):
        temp[i] = temp[i] + (max_cols - len(temp[i])) * [None]
    result=pd.DataFrame.from_records(temp,columns=["标题-{}".format(i+1) for i in range(max_cols)])
    # result.to_excel(out_file,index=False,encoding='utf-8-sig')
    result.to_excel(out_file,index=False)
    
if __name__ == '__main__':
    main()

参考文章如何利用python将xmind转为Excel?_python xmind转excel-CSDN博客

因为在执行原代码时候遇到了报错,排查问题后,我修改了1处代码。如下

新导入openpyxl包

  • 21
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
web前端是指通过使用HTML、CSS、JavaScript等技术,对网站的用户界面进行设计和开发的一种角色。他们负责将网页设计师设计的页面化为浏览器可读的代码,并负责页面的交互和动态效果的实现XMind思维导图是一种用于图形化展示思维逻辑关系的工具。在web前端工作中,使用XMind思维导图文件可以起到以下几个方面的作用: 1. 项目需求分析:通过XMind思维导图,前端开发人员可以将项目的需求进行分析和梳理,将各个功能模块之间的关系清晰地呈现出来。这有助于更好地理解和把握项目的需求。 2. 页面架构规划:在前端开发过程中,XMind思维导图可以用来规划和设计网站的整体架构。通过绘制页面之间的层级结构和交互逻辑,可以帮助开发者更好地组织和安排页面的布局和内容展示。 3. 功能模块划分:在较大规模的web项目中,前端开发人员需要将不同的功能模块划分出来,分配给不同的开发人员进行开发。通过XMind思维导图,可以对功能模块进行分组和划分,从而方便团队成员之间的协作和沟通。 4. 代码逻辑设计:在前端开发中,代码的逻辑清晰与否直接影响到项目的质量和开发效率。使用XMind思维导图可以帮助前端开发人员设计和表达代码的逻辑关系,更好地组织和优化代码结构。 总之,XMind思维导图文件在web前端的工作中起到了项目需求分析、页面架构规划、功能模块划分和代码逻辑设计等多方面的作用。它可以帮助开发者更好地理解、规划和组织前端开发工作,提高开发效率和项目质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值