About Python

What is Python particularly good for? When is using Python the “right choice” for a project?

  • Rapid prototyping — because of easiness of code writing and refactoring
  • More compact code — because of functionally-rich libraries

What are some drawbacks of the Python language?

  • Execution speed - Python can be slower than compiled languages since it is interpreted.
  • GIL - no matter how many threads or processors are present, only one thread is ever being executed at any given time.

What kind of language Python is?

  • Python is the interpreted language and compiled at the same time, which means the source code of a Python program is converted into byte code that is then executed by the Python virtual machine.
  • Python is a strongly and dynamically typed language (allows run time modifications). Strong typing means that the type of value doesn't change in unexpected ways.
  • Strong typing meaning
    Dynamic typing meaning: monkey patching, duck typing are allowed

How Python runs code?

  • The interpreter reads the python code from the source file and examines it for a syntax error.
  • If the code is error-free then the interpreter converts the code to it’s equivalent ‘Byte code’.
  • This byte code is then transmitted to the Python Virtual Machine (PVM) where the Byte code is again compiled for error if any.
image

References

SuperMade with Super