In this post, I’ll give you a quick overview of what a Python program is, what Python programs can be used for, and how to write and run a simple Python program on the Raspberry Pi.
What is a Python Program?
Python is a very useful programming language that has an easy to read syntax, and allows programmers to use fewer lines of code than would be possible in languages such as assembly, C, or Java.
The Python programming language actually started as a scripting language for Linux. Python programs are similar to shell scripts in that the files contain a series of commands that the computer executes from top to bottom.
Compare a “hello world” program written in C to the same program written in Python:
Unlike C programs, Python programs don’t need to be compiled before running them. However, you will need to install the Python interpreter on your computer to run them. The Python interpreter is a program that reads Python files and executes the code.
What Can a Python Program Do?
Like shell scripts, Python can automate tasks like batch renaming and moving large amounts of files. It can be used just like a command line with IDLE, Python’s REPL (read, eval, print, loop) function. However, there are more useful things you can do with Python. For example, you can use Python to program things like:
- Web applications
- Desktop applications and utilities
- Special GUIs
- Small databases
- 2D games
Python also has a large collection of libraries, which speeds up the development process. There are libraries for everything you can think of – game programming, rendering graphics, GUI interfaces, web frameworks, and scientific computing.
Many (but not all) of the things you can do in C can be done in Python. Python is generally slower at computations than C, but its ease of use makes Python an ideal language for prototyping programs and designing applications that aren’t computationally intensive.
How to Write and Run a Program in Python
We’ll only cover the basics of writing and executing a Python program here, but a great tutorial covering everything a programmer needs to know about Python is the book Learning Python 5th Ed. (O’Reilly) by Mark Lutz.
Installing and Updating Python
Python 2 and Python 3 come pre-installed on Raspbian operating systems, but to install Python on another Linux OS or to update it, simply run one of these commands at the command prompt:
sudo apt-get install python3
Installs or updates Python 3.
sudo apt-get install python
Installs or updates Python 2.
Opening the Python REPL
To access the Python REPL (where you can enter Python commands just like the command line) enter python or python3 depending on which version you want to use:
Enter Ctrl-D to exit the REPL.
Writing a Python Program
To demonstrate creating and executing a Python program, we’ll make a simple “hello world” program. To begin, open the Nano text editor and create a new file named hello-world.py by entering this at the command prompt:
sudo nano hello-world.py
Enter this code into Nano, then press Ctrl-X and Y to exit and save the file:
#!/usr/bin/python print "Hello, World!";
All Python program files will need to be saved with a “.py” extension. You can write the program in any text editor such as Notepad or Notepad++, just be sure to save the file with a “.py” extension.
Running a Python Program
To run the program without making it executable, navigate to the location where you saved your file, and enter this at the command prompt:
Make a Python File Executable
Making a Python program executable allows you to run the program without entering python before the file name. You can make a file executable by entering this at the command prompt:
chmod +x file-name.py
Now to run the program, all you need to enter is:
Here are some additional resources that will help you make the most out of programming in Python:
- Complete list of Python libraries
- Complete list of Python syntax
- The Python Package Index (PyPi)
- Installing Python packages on the Raspberry Pi
Hopefully you found this post useful. If you have any questions, feel free to leave a comment below. If you know anyone else that would enjoy this article, please share it! You can also get updates when ever we post a new article by subscribing!