01. Introduction
Here are the videos and links from a lecture about Python I gave at Opendot/WeMake in Milan. While you can choose many programming languages, I strongly suggest to start with Python, considering also the many applications that can be done with it (and considering that it is the most popular programming language right now.
Why Python
For example, with Python you can:
- You can install modules automatically from the huge PyPI - the Python Package Index repository.
- You can develop Python code with the interactive shell/notebook of Ipython.
- You can program hardware devices like MicroPython or Raspberry Pi.
- You can now write Processing software in Python! Or you can write similar software with Nodebox (With Nodebox 3, you can create parametric designs).
- you can use it for image processing and computer vision such as Opencv
- You can create 3D videogames or 2D videogames.
- You can create web applications with Flask, Django and many other frameworks (I’ve just found this, Moya).
- You can write desktop app with TKinter, WxPython or PyQt.
- You can package your code into a redistributable executable with py2exe, py2app or pyinstaller.
- You can mix it with Java with Jython or with C with Cython.
- You can create Desktop and Mobile app with the same code with Kivy (you can access the hardware functions with plyer).
- You can create plugins for Blender, FreeCAD, Rhinoceros3D, Gimp, Inkscape, Scribus, …
- You can write Python code in Eclipse with PyDev.
- you can use python for Machine Learning and data science using jupyter anaconda
02. Python Basics
03. Resources for learning Python
There are many resources for learning Python, including the free books How to Think Like a Computer Scientist, [Learn Python the Hard Way ](https://learnpythonthehardway.org/book/ or the interactive tutorials on Codecademy. Or even more resources here in W3schools or the videos here! Beware also of the differences between Python 2 and 3!