I have a .ipynb jupyter notebook file, where I am working.
The file contains multiple classes and methods. Some of them are dependent while some of them are not. For example:
class Node:
## this is where I create a single node
class LinkedList:
## this is where I create linked list
After this, I create another class where I inherit my base classes and implement algorithms.
class Solution:
## this is where I implement my algorithm
method1():
# method1 implementation
method2():
# method2 implementation
Finally, I create multiple mains in different cells below.
## main1 -- test case #1
if __name__ == "__main__":
## declare variables
## call classes and methods
## print something
In the next cell, I would do the following.
## main2 -- test case #2
if __name__ == "__main__":
## declare variables
## call classes and methods
## print something
Similarly, I would do this in next cell.
## main3 -- test case #3
if __name__ == "__main__":
## declare variables
## call classes and methods
## print something
I like this template while solving leetcode problems locally. But I think while debugging, it's a little bit confusing.
Is it a standard practice to do so in the jupyter notebook working environment? Does it mess up with scopes? Please help me understand if it a good practice, or recommend me how to run multiple test cases within the same jupyter notebook. Thank you so much for reading this far.