есть функция:
def test (arg1, arg2):
...
return data1, data2
Запускаю функцию так:
data1, data2 = test(arg1, arg2)
#на что получаю:
Traceback (most recent call last):
#...
ValueError: too many values to unpack (expected 2)
def test (arg1, arg2):
...
return data1, data2
data1, data2 = test(arg1, arg2)
#на что получаю:
Traceback (most recent call last):
#...
ValueError: too many values to unpack (expected 2)
def a():
return 3,4
z,b=a()
doza_andВ смысле? :О
Это не в этом месте:
>>> def test(a1, a2):
... return a1, a2
...
>>> a, b = test(1, 2)
>>> a
1
>>> b
2
SotericИтак выделены. Даже один модуль есть. Но этого всё равно мало, т.к. функции длинные.
Может быть выделять часть кода в отдельные функции/методы?
def build_template_from_original(filename_orig):
"""Открывает файл, выдирает основную таблицу ->> каркас новой страницы"""
#начинаем работу:
html_code = None
html_code = urllib.request.URLopener.open_local_file\
(html_code, filename_orig).read()
tree = html.fromstring(html_code.decode('utf-8'))
tree.getroottree()
#
title = tree.xpath('/html/head/title//text()')[0]
main_table = etree.Element('table')
main_table.set('clasS', 'maintable')
main_table.append(tree.xpath('/html/body/table/tr[2]/td/table/tr/td[2]')[0])
del tree, html_code
#создаем чистый html:
new_html = etree.Element('html')
head = etree.SubElement(new_html, 'head')
body = etree.SubElement(new_html, 'body')
#заполняем мета-теги:
meta_charset = etree.SubElement(head, 'meta', content='text/html; charset=utf-8')
meta_charset.set('http-equiv', 'Content-Type')
meta_title = etree.SubElement(head, 'title')
meta_title.text = title
#заполняем тело:
div_menu = etree.SubElement(body, 'div', clasS='menu')
div_header = etree.SubElement(body, 'div', clasS='header')
#блок описания:
div_content_description = etree.SubElement(body, 'div', clasS='content_description')
#добавляем оригинальную таблицу:
div_content_parsed = etree.SubElement(body, 'div', clasS='content_parsed')
div_content_orig = etree.SubElement(body, 'div', clasS='content_orig')
div_content_orig.append(main_table)
#заголовок страницы:
h1 = div_content_orig.xpath('./table/td/h1[@class="pTitle"]')[0]
div_header.append(h1)
#нафигация:
p_navy = div_content_orig.xpath('./table/td/p[2]')[0]
div_header.append(p_navy)
#результат:
new_html = etree.tounicode(new_html, method='html', pretty_print=False)
return new_html
#-------------------------------------------------------------------------------