Уведомления

Группа в Telegram: @pythonsu

#1 Май 6, 2018 21:15:40

loca-loca007
Зарегистрирован: 2018-05-06
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Обработка больших XML-файлов - Python

Здравствуйте, помогите пожалуйста, создать файл формата xml на питоне, сохранить туда некоторые числовые значения, а затем вывести из файла только четные или нечетные числа.
Заранее спасибо.

Офлайн

#2 Май 6, 2018 22:40:38

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Обработка больших XML-файлов - Python

Вы хотите научиться или получить результат?
Что значит больших? Файл на 1000 чисел или на 10 000 000?
Работа за спасибо или за деньги?
Если за спасибо принято так - вы делаете заготовку вам помогают заставить ее работать.
Если за деньги - оглашаете сумму и сроки.

http://lxml.de/
Но в вашем случае все можно сделать значительно проще.
Вот например валидный документ:
<?xml version=“1.0”?><a b=“1 2 3 4”/>



Офлайн

#3 Май 17, 2018 08:15:06

spikejke
Зарегистрирован: 2018-02-12
Сообщения: 42
Репутация: +  5  -
Профиль   Отправить e-mail  

Обработка больших XML-файлов - Python

loca-loca007
Здравствуйте, помогите пожалуйста, создать файл формата xml на питоне, сохранить туда некоторые числовые значения, а затем вывести из файла только четные или нечетные числа.Заранее спасибо.
Привет
createxml.py - формирует xml файл из рандомных чисел
 import random
import xml.etree.ElementTree as ET
root = ET.Element("Random")
for _ in range(100):
	ET.SubElement(root, "number").text = str(random.randrange(0,100))
tree = ET.ElementTree(root)
tree.write("simple.xml", encoding="utf-8")

parsexml.py - обрабатывает xml файл выводя чётные числа.
 import xml.etree.ElementTree as ET
tree = ET.parse("simple.xml")
root = tree.getroot()
for element in root.findall("number"):
	if int(element.text) % 2 == 0:
		print(element.text)
Если Вам необходимо вывести нечётные числа, замените
 if int(element.text) % 2 == 0:
на
 if int(element.text) % 2 == 1:

Отредактировано spikejke (Май 17, 2018 08:15:22)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version