Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 23, 2023 19:46:14

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Поогите список в массив переделать

Ты уже третий раз выдаешь желаемое за действительное
Сделать не сложно - но у тебя в каждом ответе меняется структура получаемых данных
Выполни что просит py.user.next

 cur.execute("SELECT data FROM data_suite WHERE id = ?", (idvalue,))
it = cur.fetchall()
print(it)

И выложи от и до что тебе возвращает
Что бы не выплевывать все данные огранич в запросу каким то фильтром -например
 cur.execute("SELECT data FROM data_suite WHERE id = ? LIMIT 10", (idvalue,))



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#2 Окт. 24, 2023 02:09:27

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9844
Репутация: +  853  -
Профиль   Отправить e-mail  

Поогите список в массив переделать

Scorp_1978
Есть массив к примеру
Электроэнергия
1114046
Пиковый (Т1)
847
20.09.2023
Ночной (Т2)
290
П/пиковый (Т3)
518
Электроэнергия
2542052
Пиковый (Т1)
15945
20.09.2023
Ночной (Т2)
1047
П/пиковый (Т3)
Слово “Электроэнергия” в нем повторяется 2 раза, ВОПРОС как узнать индекс второго вхождения.

Это не сложно
  
>>> lst = [
...     'Электроэнергия',
...     '1114046',
...     'Пиковый (Т1)',
...     '847',
...     '20.09.2023',
...     'Ночной (Т2)',
...     '290',
...     'П/пиковый (Т3)',
...     '518',
...     'Электроэнергия',
...     '2542052',
...     'Пиковый (Т1)',
...     '15945',
...     '20.09.2023',
...     'Ночной (Т2)',
...     '1047',
...     'П/пиковый (Т3)'
... ]
>>> 
>>> index = lst.index('Электроэнергия', lst.index('Электроэнергия') + 1)
>>> index
9
>>>

Просто опиши, что ты делаешь, зачем тебе это всё надо. Тогда тебе скажут, как это сделать в одну строчку (образно говоря). А не вот это вот всё, где ты делаешь шаги, которые якобы ведут к результату, а по большому счёту они все ненужные.

Просто следующий вопрос у тебя будет “а как вот теперь после этой второй Элетроэнергии взять то, что после неё стоит до такой-то строки, которая там впереди?” и так далее. Далеко не факт, что тебе нужно эти поиски делать. Возможно, это всё надо на отдельные куски побить, а в кусках уже потом брать всю информацию в готовом и найденном виде.



Офлайн

#3 Окт. 24, 2023 08:29:09

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Поогите список в массив переделать

У него в предыдущем примере длина списка 19 (нечет) - так что по кускам побить не получится
Так что либо он данные из головы писал или ошика в структуре БД (на поле с пустым значением не создан дефаулт - хотя всеравно должно было бы быть None)
Так что ждем когда же он все таки выложит результат запроса и версию питона
(в 3.12 как раз добавили метод разбивки на куски прямо в стлиб)



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#4 Окт. 30, 2023 18:05:26

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9844
Репутация: +  853  -
Профиль   Отправить e-mail  

Поогите список в массив переделать

ZerG
У него в предыдущем примере длина списка 19 (нечет) - так что по кускам побить не получится
Там можно побить по кускам. Просто для этого используется маркер. Можно разбивать по длине, а можно разбивать по маркеру. Если полей каких-то не хватает, можно их создавать в виде пустых. И то, если это вообще надо, а не применяется типизация кусков. При типизации у тебя просто есть куски разных типов. Соответственно, каждый тип куска обрабатывается своим индивидуальным набором операций.



Отредактировано py.user.next (Окт. 30, 2023 18:06:01)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version