Python » Страница 787

-

Программирование на Python



bogdan-g


репутация:
на сайте с 1970 года
сообщений:

7861

ман, а еще инфозмей есть и я его (из) читал.

Man197


репутация:
на сайте с 1970 года
сообщений:

7862

bogdan-g,
В инфозмее вся инфа в кучу свалена, а здесь всё разжёвывается буквально по слогамsmile
dimy44,


lb=[a.Item(title=u'item1', subtitle=u'subitem1', i=s.info[id]['intendtime']), a.Item(title=u'item2', subtitle=u'subitem', i=s.info[id]['intendtime']), ...]

i - это время типа 1247893.103
Вот надо по времени рассортировать как то.
-------
А вот что получается, если к списку применить sort:

File "C:\private\f00000ea\CDBT.py", line 169, in getlist
s.lb.sort(lambda x,y:cmp(x.intendtime,y.intendtime))
File "python\resource\appuifw2.py", line 245, in sort
File "python\resource\appuifw2.py", line 99, in __ui_insert
IndexError: index out of range

Список не пустой, странно...

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7863

так у тебя ж x.i а не x.intendtime должно. И будет сортировать.

Man197


репутация:
на сайте с 1970 года
сообщений:

7864

Ну там intendtime вместо i всунут. Просто это слово длинное, я его как i написал. Вот:
s.lb.append(a.Item(title=ru(s.info[id]['start_time']+' - '+s.info[id]['end_time']),subtitle=s.info[id]['content'],cid=id,intendtime=s.info[id]['intendtime']))
И таких элементов дофига в цикле добавляется.

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7865

хз че у тебя так. Вот, симмитировал ситуацию

import appuifw2 as aw
lb = aw.Listbox2(items=[])
for i in range(20, 0, -1):
lb.append(aw.Item(title='Title %d' % i, subtitle='Subitle %d' % i, id=i))
print lb[0].id
lb.sort(lambda x, y: cmp(x.id, y.id))
print lb[0].id
>>>
20
1
>>>

все сортируется как видишь.

Man197


репутация:
на сайте с 1970 года
сообщений:

7866

Блин, ну ладно, буду ковырять...

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7867

еще сортировку надо поместить между begin_update и end_update

Man197


репутация:
на сайте с 1970 года
сообщений:

7868

Проблема решена! Создал отдельный список s.lbl, в него всё пихал и сортировал, а потом s.lb.extend(s.lbl), заработало!

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7869

bogdan-g,
вот тебе пример листбокса на канвасе с фоном своей картинки.

Прикрепленный файл #1: 626_canvas_listbox.zip (1,79 Kb)

Man197


репутация:
на сайте с 1970 года
сообщений:

7870

Ситуация такая: скрипт в цикле открывает url через urllib.urlopen().read(). После нескольких успешных проходов вылезает IOError: [Errno socket error] (12, 'Not enough space')
Что это такое и как с ним бороться?