【Python】把xmind轉換為指定格式txt文本

人工智能訓練通常需要使用文本格式,xmind作為一種常規格式不好進行解析,那如何把xmind轉換為txt格式呢?

軟件信息

python

python -v

Python 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)] on win32
依賴庫

pip install xmindparser==1.0.9

程序腳本

#!/usr/bin/python3
# -*- coding: utf-8 -*-
import os,re
from xmindparser import xmind_to_dict,xmind_to_json
def xmindToTextFile(x_file=r'weltestDemo.xmind'):filename=x_file.strip('.xmind')dict_data = xmind_to_dict(x_file)resultlist = []def dictToTextList(input_dict, pre):if isinstance(input_dict, dict):#if (len(input_dict.keys())==1 and list(input_dict.keys())[0]=="title") or (len(input_dict.keys())==2 and list(input_dict.keys())==['title','makers']):if (len(input_dict.keys())==1 and list(input_dict.keys())[0]=="title") or (len(input_dict.keys())==2 and list(input_dict.keys())==['title','makers']):pre = pre + str(input_dict['title'])resultlist.append(re.sub(r'[\n\r]*','',pre)+'\n')else:for key in input_dict.keys():value = input_dict.get(key)if (str(key) == "title"):pre = pre + str(value)+ "|#|"if isinstance(value, dict):dictToTextList(value, pre)elif isinstance(value, list):for item in value:dictToTextList(item, pre)elif isinstance(input_dict, list):#print('list'+str(input_dict))for item in input_dict:dictToTextList(item, pre)elif isinstance(input_dict, str):if len(input_dict) > 0:passdictToTextList(dict_data,"")if len(resultlist)>0:if os.path.exists(filename+'.txt'):os.remove(filename+'.txt')with open(filename+'.txt','a',encoding='UTF-8') as txtfile:txtfile.writelines(resultlist)else:with open(filename+'.txt','a',encoding='UTF-8') as txtfile:txtfile.writelines(resultlist)xmindToTextFile(x_file=os.path.abspath('weltestDemo.xmind'))

操作演示

weltestDemo.xmind

在這里插入圖片描述

執行命令

調整腳本中文件名稱為“weltestDemo.xmind”,可以依據自己需要進行調整
在這里插入圖片描述
如果想批量執行指定目錄下的所有xmind文件可以調整為如下:

 for item in os.listdir('./xmindfile'):#print(f'./xmindfile/{item}')if item.endswith('.xmind'):file_name=f'./xmindfile/{item}'abs_name = os.path.abspath(file_name)print(abs_name)xmindToTextFile(abs_name)
最后結果
weltestDemo|#|weltest|#|靜態界面|#|輸入|#|長度|#|不超過四位
weltestDemo|#|weltest|#|靜態界面|#|輸入|#|長度|#|不超過五位
weltestDemo|#|weltest|#|靜態界面|#|輸入|#|長度|#|不超過6位
weltestDemo|#|weltest|#|靜態界面|#|輸入2|#|不超過四位
weltestDemo|#|weltest|#|靜態界面|#|輸入2|#|不超過五位
weltestDemo|#|weltest|#|靜態界面|#|輸入2|#|不超過6位
weltestDemo|#|weltest|#|功能測試|#|輸入|#|長度|#|不超過四位
weltestDemo|#|weltest|#|功能測試|#|輸入|#|長度|#|不超過五位
weltestDemo|#|weltest|#|功能測試|#|輸入|#|長度|#|不超過6位
weltestDemo|#|weltest|#|功能測試|#|輸入2|#|不超過四位
weltestDemo|#|weltest|#|功能測試|#|輸入2|#|不超過五位
weltestDemo|#|weltest|#|功能測試|#|輸入2|#|不超過6位

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/23315.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/23315.shtml
英文地址,請注明出處:http://en.pswp.cn/web/23315.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python 包安裝及常用命令【python 入門】

背景: 近期看到一個項目,做微信只能機器人,服務是使用python搭建的,于是拷貝下來自己打算跑一跑,部署一下,可是自己又沒有python的經驗,于是各種查資料學習,跟著敲一敲,順…

Go 1.19.4 切片與子切片-Day 05

1. 切片 1.1 介紹 切片在Go中是一個引用類型,它包含三個組成部分:指向底層數組的指針(pointer)、切片的長度(length)以及切片的容量(capacity),這些信息共同構成了切片的…

單片機排水泵高壓方案

靈動微多顆算力高、高可靠性的通用系列和電機專用系列MCU,配合成熟的控制算法,覆蓋了包括洗衣機在內的各種大小家電市場。 RAMSUN提供的MM32 MCU種類較多,例如洗衣機內部的排水泵系統,排水泵控制首選電控高性價比產品MM32SPIN023…

JavaWeb_SpringBootWeb案例

環境搭建: 開發規范 接口風格-Restful: 統一響應結果-Result: 開發流程: 第一步應該根據需求定義表結構和定義接口文檔 注意: 本文代碼從上往下一直添加功能,后面的模塊下的代碼包括前面的模塊&#xff0c…

Xmind Pro 2024 專業版激活碼(附下載鏈接)

說到思維導圖,就不能不提 Xmind。這是一款優秀的思維導圖工具,擁有著豐富的導圖模板,漂亮的界面和配色,以及各種各樣的創意工具。 新架構速度更快 采用全新 Snowdancer 引擎,一種堪稱「黑科技」的先進圖形渲染技術。…

翹首以盼的抗鋸齒

Antialiasing 實際的圖形學中是怎么實現反走樣的呢? 我們不希望實際產出的圖形有鋸齒效果,那怎么辦呢? 從采樣的理論開始談起吧 Simpling theory 照片也是一種采樣,把景象打散成像素放到屏幕上的過程: 還可以在不…

14、企業數據資源相關會計處理暫行規定

為規范企業數據資源相關會計處理, 強化相關會計信息披露, 根據《中華人民共和國會計法》 和企業會計準則等相關規定, 現對企業數據資源的相關會計處理規定如下: 一、 關于適用范圍 本規定適用于企業按照企業會計準則相關規定確認為無形資產或存貨等資產類別的數據資源,以…

21 - 即時食物配送 II(高頻 SQL 50 題基礎版)

21 - 即時食物配送 II -- sum(if(order_datecustomer_pref_delivery_date,1,0))/count(*)sum(order_datecustomer_pref_delivery_date)/count(*) -- count(*),表示數據的行數,如果有分組,為分組后數據的行數select round(100*sum(if(order_datecustomer_…

【名詞解釋】Unity的Button組件及其使用示例

Unity的Button組件是Unity引擎中UI系統的一部分,它允許用戶創建可交互的按鈕,用戶可以點擊這些按鈕來觸發事件。Button組件通常用于游戲界面中,比如開始游戲、暫停游戲、選擇選項等。 Button組件的主要屬性包括: interactable: …

原來Stable Diffusion是這樣工作的

stable diffusion是一種潛在擴散模型,可以從文本生成人工智能圖像。為什么叫做潛在擴散模型呢?這是因為與在高維圖像空間中操作不同,它首先將圖像壓縮到潛在空間中,然后再進行操作。 在這篇文章中,我們將深入了解它到…

達摩院重大“遺產”!fluxonium量子比特初始化300納秒且保真度超過99%

通用量子計算機開發的主要挑戰之一是制備量子比特。十多年來,研究人員在構建量子計算機的過程中主要使用了transmon量子比特,這也是迄今為止商業上最成功的超導量子比特。 但與業界多數選擇transmon量子比特不同,(前)…

npm運行報錯:無法加載文件 C:\Program Files\nodejs\npm.ps1,因為在此系統上禁止運行腳本問題解決

問題其實已經顯而易見了 系統禁止運行腳本 以管理員身份運行 PowerShell: 右鍵點擊“開始”按鈕或按 Win X,然后選擇“Windows PowerShell(管理員)”。 查看當前執行策略: 在 PowerShell 中輸入以下命令來查看當前的執行策略: G…

Python文本處理利器:jieba庫全解析

文章目錄 Python文本處理利器:jieba庫全解析第一部分:背景和功能介紹第二部分:庫的概述第三部分:安裝方法第四部分:常用庫函數介紹1. 精確模式分詞2. 全模式分詞3. 搜索引擎模式分詞4. 添加自定義詞典5. 關鍵詞提取 第…

服務器遭遇UDP攻擊時的應對與解決方案

UDP攻擊作為分布式拒絕服務(DDoS)攻擊的一種常見形式,通過發送大量的UDP數據包淹沒目標服務器,導致網絡擁塞、服務中斷。本文旨在提供一套實用的策略與技術手段,幫助您識別、緩解乃至防御UDP攻擊,確保服務器穩定運行。我們將探討監…

最新PHP眾籌網站源碼 支持報名眾籌+商品眾籌+公益眾籌等多種眾籌模式 含完整代碼包和部署教程

在當今互聯網飛速發展的時代,眾籌模式逐漸成為了創新項目、商品銷售和公益活動融資的重要渠道。分享一款最新版的PHP眾籌網站源碼,支持報名眾籌、商品眾籌和公益眾籌等多種眾籌模式。該源碼包含了完整的代碼包和詳細的部署教程,讓新手也可以輕…

利用醫學Twitter進行病理圖像分析的視覺-語言基礎模型| 文獻速遞-視覺通用模型與疾病診斷

Title 題目 A visual–language foundation model for pathology image analysis using medical Twitter 利用醫學Twitter進行病理圖像分析的視覺-語言基礎模型 01 文獻速遞介紹 缺乏公開可用的醫學圖像標注是計算研究和教育創新的一個重要障礙。同時,許多醫生…

自動化測試-Selenium(一),簡介

自動化測試-Selenium 1. 什么是自動化測試 1.1 自動化測試介紹 自動化測試是一種通過自動化工具執行測試用例來驗證軟件功能和性能的過程。與手動測試不同,自動化測試使用腳本和軟件來自動執行測試步驟,記錄結果,并比較預期輸出和實際輸出…

【Python報錯】已解決ModuleNotFoundError: No module named ‘timm’

成功解決“ModuleNotFoundError: No module named ‘timm’”錯誤的全面指南 一、引言 在Python編程中,經常會遇到各種導入模塊的錯誤,其中“ModuleNotFoundError: No module named ‘timm’”就是一個典型的例子。這個錯誤意味著你的Python環境中沒有安…

Navicate 導入導出數據庫

導出數據庫 找地方存在來,別忘了放在那里。 新建一個數據庫,記得要和導出數據庫的 字符集與排序規則 相同 打開數據庫后,我們選擇它(就是單擊它)然后右鍵打開菜單-運行sql文件 找到剛才存儲的位置,開始 &a…

大中小面積紫外光老化加速試驗機裝置

高低溫試驗箱,振動試驗臺,紫外老化試驗箱,氙燈老化試驗箱,沙塵試驗箱,箱式淋雨試驗箱,臭氧老化試驗箱,換氣老化試驗箱,電熱鼓風干燥箱,真空干燥箱,超聲波清洗機,鹽霧試驗箱 一、產品用途 紫外光加速老化試驗裝置采用熒光紫外燈為光源,通過模擬自然陽光中…