|
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
|
||||||||||||||||
Оптимизация кода для вывода большого обьема данных19.04.2021, 09:45. Показов 2569. Ответов 10
Подскажите пожалуйста, я новичок в питоне и хотел знать как лучше поступить с целью оптимизации своей программы. Programm.py последовательно выводит мультистроки(из кортежа, а кортежи в словаре)обьемом под 50Mb из data.py(300Mb).
Мне сделать так:
0
|
||||||||||||||||
| 19.04.2021, 09:45 | |
|
Ответы с готовыми решениями:
10
Вывод большого обьёма данных Загрузка большого обьема данных и Connect к MSSQL2000 |
|
Модератор
|
|
| 19.04.2021, 09:53 | |
|
pyatpy, не особо понял в чем проблема, но дам небольшую подсказку:
Если в твоем коде встречаются такие названия как text0, text1, text2 ..., то тут явно надо использовать списки(кортежи), чтобы избавиться от тонны кода в будущем.
1
|
|
|
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
|
||||||||||||||||
| 19.04.2021, 14:38 [ТС] | ||||||||||||||||
|
Всмысле, вот так?:
НЕ ТАК:
0
|
||||||||||||||||
|
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
|
||||||||||||||||
| 19.04.2021, 21:29 [ТС] | ||||||||||||||||
|
DmFat,
Всмысле, вот так?:
НЕ ТАК:
0
|
||||||||||||||||
|
|
||
| 20.04.2021, 10:03 | ||
|
Я тоже не понял. И вперёд - читать про списки в питоне. Кортежи тут ни к чему.
Опишите задачу. Непонятно даже, что импортируете. Данные - если простые, то в текстовых файлах. Если посложнее - json или что-то подобное, возможны варианты. Если данных много, а ворочать ими надо быстро - то СУБД.
2
|
||
|
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
|
|||||||||||
| 20.04.2021, 11:28 [ТС] | |||||||||||
|
dondublon,
Ok, скажу проще. Я пишу текстовый квест, он состоит из main.py(тут код) и data.py(тут текст). В data.py есть масивы, а в масиве очень много ключей с строками текста, а как я ранее говорил текста очень много. Пока вся работа идет в main.py, в него надо сделать ипорт текста из data.py. Мне импортировать весь data.py файо, а потом выводить нужный текст?: в main.py:
в main.py:
0
|
|||||||||||
|
|
||
| 20.04.2021, 12:03 | ||
|
Добавлено через 1 минуту И не только потому, что вы содержите данные в .py, но и потому, что вы импортируете данные (вообще, некие) через import.
1
|
||
| 20.04.2021, 16:28 | |||||||
|
import data , и при синтаксисе from data import dict1 , питон загружает и обрабатывает модуль целиком. Разница только в том, как он формирует пространства имен. При import data создается самостоятельное пространство имен, в котором к переменным нужно обращаться с помощью квалифицированных имен data.dict1, что исключает конфликта имен, если в вызывающей программе у вас окажется переменная с таким же именем. При синтаксисе from data import dict1 указанные переменные из модуля добавляются в пространство имен вызывающей программы, поэтому к ним можно обращаться по простому имени dict1 . Но если в вызывающей программе окажется переменная с таким же именем, то произойдет конфликт имен. Если Вы уверены, что у Вас одинаковых имен нет, то Вы можете использовать для импорта любой из этих синтаксисов. На производительность это никак не повлияет, но только при условии, что Вы выполняете импорт только один раз. Вариант, когда Вы делаете импорт несколько раз , это не правильное решение. Так как при повторном импорте from data import dict2 питон ничего импортировать не будет, а просто использует уже загруженный модуль, что бы взять из него переменную dict2 , и поместить ее в пространство имен вызывающей программы. Поэтому что бы не засорять код, импорт делают только один раз, и если используют синтаксис с from то сразу указывают все переменные, которые вы хотите добавить в пространство имен вызывающей программы.
pyatpy, Если же Вы хотите осуществлять работу с данными частями, то нужно хранить эти части в отдельных файлах и загружать и выгружать их поочередно, или хранить в одном файле, но загружать его частями. Если Вы храните данные в базе данных (БД), то из нее тоже можно брать данные частями. Если же у Вас все хранится в одном модуле, то Вы может работать с ним только целиком (в смысле загружать целиком).
1
|
|||||||
|
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
|
|
| 20.04.2021, 20:50 [ТС] | |
|
dondublon,
Я пон. В обеих случаях импорт весь модуль, from добавляет переменную, но также импорт весь модуль и дает работу только над теми переменными, которые мы указали. И что там с БД, я с ними не работал, моя проблемма описана выше, но не зная всех тонкостей, я не правильно ее описал, мне просто надо подгружать и выгружать нужные мне участки текста и если вы поможете - буду признателен. Я просто новичок, а как иморт без import я не знаю и причем здесь js я тоже не знаю. Я искал инфу, но не нашел. Если можете помогите пж. если такое надо обсуждать в др. теме то киньте плз ссылку на нее. Добавлено через 2 минуты Viktorrus, Я пон. В обеих случаях импорт весь модуль, from добавляет переменную, но также импорт весь модуль и дает работу только над теми переменными, которые мы указали. И что там с БД, я с ними не работал, моя проблемма описана выше, но не зная всех тонкостей, я не правильно ее описал, мне просто надо подгружать и выгружать нужные мне участки текста и если вы поможете - буду признателен. Я просто новичок, а как иморт без import я не знаю и причем здесь js я тоже не знаю. Я искал инфу, но не нашел. Если можете помогите пж. если такое надо обсуждать в др. теме то киньте плз ссылку на нее. pyatpy на форуме Обратить внимание администрации на это сообщение 0
0
|
|
|
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
|
||
| 20.04.2021, 20:56 | ||
|
1
|
||
|
|
||
| 21.04.2021, 10:00 | ||
Сообщение было отмечено pyatpy как решение
РешениеДа, вы новичок, не понимаете вашей проблемы, берётесь её решать неправильно и просите помочь вам в этом неправильном решении. Я этого делать не буду, в отличие от Victorrus. Что вам сейчас нужно - так это научиться работать с функциями и классами. Иными словами - ООП. И усвоить, что импортируется через import ТОЛЬКО код, а не данные и не состояние. (Строго говоря, импортировать состояние можно, в редких случаях, и это не ваш.) В качестве критерия понимания - в вашей программе должно остаться не более одной глобалки.
2
|
||
| 21.04.2021, 10:00 | |
|
Помогаю со студенческими работами здесь
11
Оптимизация кода для вывода категорий. Оптимизация вывода большого (более 7000) количества записей на странице Реализовать функцию для вывода большого массива данных постранично Вывод большого обьема текста(от 1гб) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|