python從XML裡取數,遍歷等
#coding=utf-8 #通過minidom解析xml檔案 import xml.dom.minidom as xmldom import os ''' XML檔案讀取 <?xml version="1.0" encoding="utf-8"?> <catalog> <maxid>4</maxid> <login username="pytest" passwd='123456'>dasdas <caption>Python</caption> <item id="4"> <caption>測試</caption> </item> </login> <item id="2"> <caption>Zope</caption> </item> </catalog>''' ''' x_path="E:\\doc\\專案文件\\廣東\\拓撲圖\\test.xml" xmlfilepath = os.path.abspath(x_path) print ("xml檔案路徑:", xmlfilepath) # 得到文件物件 domobj = xmldom.parse(xmlfilepath) print("xmldom.parse:", type(domobj)) # 得到元素物件 elementobj = domobj.documentElement print ("domobj.documentElement:", type(elementobj)) #獲得子標籤 subElementObj = elementobj.getElementsByTagName("login") print ("getElementsByTagName:", type(subElementObj)) print (len(subElementObj)) # 獲得標籤屬性值 print (subElementObj[0].getAttribute("username")) print (subElementObj[0].getAttribute("passwd")) #區分相同標籤名的標籤 subElementObj1 = elementobj.getElementsByTagName("caption") for i in range(len(subElementObj1)): print ("subElementObj1[i]:", type(subElementObj1[i])) print (subElementObj1[i].firstChild.data) #顯示標籤對之間的資料''' x_path="E:\\doc\\專案文件\\廣東\\拓撲圖\\index.do.xml" nodes=list() xmlfilepath = os.path.abspath(x_path) def findNodeIndex(node): for i in range(len(nodes)): if(nodes[i]==node): return str(i) # +":"+nodes[i] print ("xml檔案路徑:", xmlfilepath) # 得到文件物件 domobj = xmldom.parse(xmlfilepath)print("xmldom.parse:", type(domobj)) # 得到元素物件 elementobj = domobj.documentElement #print ("domobj.documentElement:", type(elementobj)) subElementObj = elementobj.getElementsByTagName("data") print(len(subElementObj)) for i in range(len(subElementObj)): if(subElementObj[i].getAttribute("type")=='twaver.Node'): sub2=subElementObj[i].getElementsByTagName("p") for j in range(len(sub2)): if(sub2[j].getAttribute("n")=='name'): node=sub2[j].firstChild.data.replace('...','') print("{name:'",node,"',draggable: true,},") nodes.append(node) print("nodes len:",len(nodes)) for i in range(len(subElementObj)): if(subElementObj[i].getAttribute("type")=='twaver.Link'): sub3=subElementObj[i].getElementsByTagName("c") for j in range(len(sub3)): node=sub3[j].firstChild.data.replace('...','') iNode=findNodeIndex(node) if(sub3[j].getAttribute("n")=='aNode'): #print(sub3[j].firstChild.data ,' ',iNode, end='') print('{source:',iNode, end='') elif(sub3[j].getAttribute("n")=='zNode'): #print(sub3[j].firstChild.data,' ',iNode) print(",target:",iNode,"},")
相關推薦
python從XML裡取數,遍歷等
#coding=utf-8 #通過minidom解析xml檔案 import xml.dom.minidom as xmldom import os ''' XML檔案讀取 <?xml version="1.0" encoding="utf-8"?> <catalo
Python3學習(三十四):python從mongo中取資料,使用pandas.DataFrame進行列操作並轉字典
使用該操作的具體場景(一般與mongo相結合): 比如mongo中存了幾萬條資料,需要將mongo中的資料取出來,並對其中的一列進行相關操作,最後轉化為字典格式。 具體程式碼實現如下: import pandas as pd import pymongo import
python中List(列表)的訪問,遍歷,新增,刪除以及函式和方法的使用
一、list 1.對列表內容的建立,訪問,新增,刪除,替換 # -*- coding: UTF-8 -*- #使用[]建立一個名為L的list L=[1,2,3,4,5] #按照索引訪問第一個和最後一個元素 print L[0],L[-1] #使用append新增新元素時
迴圈佇列的順序儲存實現(入隊,出隊,清隊,銷燬隊,遍歷等)
迴圈佇列的順序儲存實現,包括入隊,出隊,清隊,銷燬隊,遍歷佇列等 佇列(queue)是一種先進先出(first in fist out,縮寫為FIFO)的線性表,它只允許在表的一端進行插入,而在另一端進行刪除元素。允許插入的一端稱為隊尾(rear),允許刪除的一
二叉樹的構建,遍歷等基本操作
#include"stdio.h" #include"stdlib.h" #include"string.h" typedef struct BTNode { char data; struct BTNode *lchild,*rchild; }B
Python從資料庫取數,對時間進行處理,統計資料彙總後畫圖
#-*- coding: utf8 -*- import odbc import numpy as np import pylab as pl allDate = [] allData = [] if __name__ == '__main__': print("run success") a
python 從鍵盤輸入一個字串,將小寫字母全部轉換成大寫字母,將字串以列表的形式輸出(如果字串包含整數取整型)?
str1 = input("請輸入任意字串: ") list1= [] #儲存字串 list2= [] #儲存數字 for i in str1: if i.isdigit() == True: #判斷當前字元是否為字元 list2.append(int(i)) else:
【hihocoder 1388】【區間DP】A Game【給出一個數列,兩人每次從數列的頭尾取數,小ho 先取,小hi每次都採取最優策略,問小ho最終能取得的數的總和最大是多少】
描述 Little Hi and Little Ho are playing a game. There is an integer array in front of them. They take turns (Little Ho goes first) to select a number from
Python基礎day-6[函數,命名空間,作用域]
必須 數據類型 一個 none locals 函數 嵌套 補充 元組 函數的返回值 通常有參函數是需要返回值的。 返回值的幾種形式: 1.如果函數內沒有return就返回None 2.return 返回的數據類型沒有限制,也可以返回多個值,
python模擬瀏覽器爬取數據
wow64 request resp size stat apple 現在 form Language 爬蟲新手大坑:爬取數據的時候一定要設置header偽裝成瀏覽器!!!! 在爬取某財經網站數據時由於沒有設置Header信息,直接被封掉了ip 後來設置了Accep
輪流取數,最大收益遊戲
ron pre ret 個人 pri 一個 splay 技術分享 aps 有一個整數串,有兩個人輪流取,每次可以取走一個前綴或後綴。兩人都足夠聰明,且都會使自己收益最大。求取完後先手收益。 import numpy as np from random import
day18 python學習 內置函數,匿名函數,裝飾器的
編碼 color 返回值 空字符 before 篩選 等於 是不是 執行函數 format的用法 print(format(‘aa‘,‘>20‘)) print(format(‘aa‘,‘<20‘)) print(format(‘aa‘,‘^20‘)) 打印
Python中while,for循環及文件操作,函數,模塊等操作
文件操作 rand 提示 don close choice line 轉發 字典 此內容本人原創,拒絕商業用途及他人轉發,嚴厲打擊有以上行為,發現後追究法律責任。print內調用變量 >> print "tom is %d,jerry is %d&q
python從mysql導出數據導excel
python excel 導出# coding:utf8import sys reload(sys)sys.setdefaultencoding('utf8')# author: 'zkx'# date: '2018/3/11'# Desc:從數據庫中導出數據
從xml檔案取值
假設有個 test.xml,包含以下欄位: 1 <config> 2 <property name="login_protocol" value="http" /> 3 <property name="access_control" val
python 從檔案中讀取資料,同時去除掉空格和換行
從檔案中讀取資料,同時去除掉空格和換行,程式碼如下 import numpy as np def sort(path): w = open(path,'r') l = w.readlines() col=[] for k in l: k = k.strip('\n')
Python資料結構——二叉樹的遍歷(先根,中根,後根)
先序遍歷:根左右 中序遍歷:左根右 後序遍歷:左右根 # -*- coding:utf-8 -*- # file: TreeTraversal.py # class BTree: # 二叉樹節點 def __init__(self, value):
自定義截取數,截取字符串,返回字符串數組。
pre stat oid ons emp color ntc 方案 定義 今天早上一個朋友請教我給一串字符串,截取數(比如3,截取數可自定義) 每3個截取一次,截取到後面小於3位的一樣保留到字符串數組裏。 想了一下 寫了一個通用方法,記錄一下,給有用的朋友參考(不喜勿噴,
python對同一個資料夾下進行遍歷操作,跳過處理過的
import os path="路徑" #此處路徑為包含你要處理檔案的路徑 for filename in os.listdir(path): (fname,fename)=os.path.splittext(filename) if(fename=='.j
根據class獲取同一個類的值,返回時一個數組,遍歷取值
<div class="text-cont">第1條</div> <div class="text-cont">第2條</div> <div class="text-cont">第3條</div> <div class="