Question How do you develop python classes that contains computationally expensive code?

yhelothar

Lifer
Dec 11, 2002
18,408
39
91
So I'm writing a class that contains a couple of methods that need to be run in succession. Some of the earlier methods are computationally expensive and can take 5+ minutes to run.
If I want to test code in the later methods, I need to re-instantiate the object with the modified code, then re-run all of the methods, and thus taking a long time.
If the methods were in functions instead of being within a class, the outputs of each function would be stored in memory so I can just input those outputs to the function I'm developing. It makes rapid prototyping really quick and easy. What's the best way to develop classes to afford that same prototyping-testing feedback loop ability?
 

Ken g6

Programming Moderator, Elite Member
Moderator
Dec 11, 1999
16,282
3,903
75
I suggest you get pickled! Wait, that didn't come out right.

I suggest you get your class pickled! Wait, that sounds worse.

I suggest you pickle your class. Hm, still sounds weird, but I'll go with it.

What I mean to suggest is that you set up your class, pickle it, and save it to be used as test data later.

Note that this could also be an opportunity to set up your code to have a checkpoint - a point where the current state of the computation is saved into a file. You can then use that file to restart computation from that point if something unexpected happens, like Windows crashing.
 

yhelothar

Lifer
Dec 11, 2002
18,408
39
91
I suggest you get pickled! Wait, that didn't come out right.

I suggest you get your class pickled! Wait, that sounds worse.

I suggest you pickle your class. Hm, still sounds weird, but I'll go with it.

What I mean to suggest is that you set up your class, pickle it, and save it to be used as test data later.

Note that this could also be an opportunity to set up your code to have a checkpoint - a point where the current state of the computation is saved into a file. You can then use that file to restart computation from that point if something unexpected happens, like Windows crashing.
Great idea. You got me out of this pickle with the pickle!
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |