Python Programming

Class
Python has object-oriented programming features. In this context, IPKISS uses classes to keep related things together. In IPKISS, a PCell is implemented as a Python class.
CSV
A textual file format, stands for “comma separated values”. Can be loaded with Numpy, or loaded with MS Excel.
Inheritance
Inheritance is used in object-oriented to indicate that a object of a certain class is a specialisation of its parent-class.
List Comprehension
List Comprehensions in Python provide a concise way to create lists. Example: [2 * x for x in range(10)].
Matplotlib
A Python toolbox for plotting. www.matplotlib.org
Python
A programming language which is easy to learn, and allows to create both simple and complex programs. IPKISS is largely written in Python. Python is a scripting language, which means the Python Interpreter runs a script file (with the .py file extension). It offers similar functionality as Matlab.
Python Community
The name of the group of people that work together on the Python programming language and its large number of modules
Python Interpreter
The location of the Python executable which is used to ‘read’ / ‘interprete’ your scripts. You can have multiple versions of Python installed on your computer. When you install Luceda, a new Python Interpreter is added on your computer. The default installation location on Windows is C:\luceda\ipkiss_xyz\python\envs\ipkiss3\python.exe, where xyz is the ipkiss version number. On Linux, the environment is by default installed under your local anaconda environment. For example /home/username/miniconda2/envs/ipkiss3/bin/python.
Python Module
A group of related functionalities implemented in the Python programming language. Software developers and scientists can use modules to share their work with others. Many modules exist, one example is the numpy module which provides linear algebra functionality. Another example is the scipy which provides general purpose functionality for mathematics, science and engineering.
PYTHONPATH

An environment variable used by python to discover python modules and packages. When you create your own package ( can be a PDK ), you’ll have to make sure that it’s added to the PYTHONPATH before it can be used.

on windows you can set the PYTHONPATH from a command prompt with the following command:

setx PYTHONPATH=C:\my\custom\module;%PYTHONPATH%

on linux you can add the following line to your .bashrc file:

export PYTHONPATH=/my/custom/module:$PYTHONPATH
Unit Tests
Some code that verifies (tests) that a unit of functionality works as expected. Using unit tests is a great way to manage and improve the quality of your modules.