• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wielka zmienna a pamięć

VPS Starter Arubacloud
0 głosów
141 wizyt
pytanie zadane 19 lutego 2020 w Python przez Pico Obywatel (1,330 p.)
Witam, mam pewien problem. Chodzi o wielką zmienną zapychającą pamięć. Mam program, który tworzy ogromną zmienną na podstawie pewnego tekstu i tekst w tej zmiennej jest około 80% większy niż w oryginale. Problem jest taki, że przy większym tekście program się po prostu zacina i tyle, za to z czymś mniejszym idealnie sobie radzi. Dodam jeszcze, że tekst ten jest potem zapisywany do pliku. Pomoże ktoś w rozwiązaniu tego problemu
komentarz 19 lutego 2020 przez adrian17 Ekspert (344,100 p.)
Jak duża jest "wielka"? Gigabajty?

Mógłbyś proszę pokazać kod i powiedzieć, jakie zmienne i rozmiary masz na myśli?
komentarz 19 lutego 2020 przez Pico Obywatel (1,330 p.)
Jest na tyle duża żeby komputer z 2gb ram se z tym nie poradził. A kodu niestety nie mg udostępnić gdyż cenię sobie jego prywatność do czasu publikacji całego programu. No ale tak jak pisałem. Jej rozmiar zależy od rozmiaru tekstu wejściowego. Jeśli takowy waży 5KB to daje radę, ale jeśli 5MB to nagle czkawka
komentarz 19 lutego 2020 przez mokrowski Mędrzec (155,460 p.)
Mało precyzyjne pytanie... nawet nie wiadomo czy Python 2 czy 3...

1. Jaki jest sys.getsizeof(X) tego obiektu X?

2. Typ bytes i bytearray, stosują protokół bufora. To może tu pomóc.

3. Czy naprawdę trzeba pełne dane wczytać? Nie można tego zrobić etapami/iteratorem ?
komentarz 19 lutego 2020 przez adrian17 Ekspert (344,100 p.)

Jeśli takowy waży 5KB to daje radę, ale jeśli 5MB to nagle czkawka

"5MB" zawartość pliku rosnąca o "około 80%" sama z siebie nie zajmie kilku gigabajtów. Jakbym miał strzelać, to jakieś bardzo słabe struktury danych wybrałeś - ale nic ciekawego nie da się stwierdzić bez znajomości kodu, jak w ogóle wygląda ta "zmienna", jakie są tutaj typy.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 219 wizyt
pytanie zadane 8 listopada 2019 w C i C++ przez niezalogowany
+2 głosów
2 odpowiedzi 8,868 wizyt
0 głosów
1 odpowiedź 196 wizyt
pytanie zadane 1 grudnia 2019 w C i C++ przez PirchHD Obywatel (1,730 p.)

92,455 zapytań

141,263 odpowiedzi

319,099 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...