Beginner Series: Python Tutorial
One of the most important things you’ll do when working with any programming language is setup a development environment which allows you to execute the code you write. Without this, you will never be able to check your work and see if your website or application is free of syntax errors.
With Python, you also need something called an interpreter that converts your code – which makes up the entirety of your application – to something the computer can read and execute. Without this interpreter, you’ll have no way to run your code.
To convert your code, you must first use a Python shell, which calls upon the interpreter through something called a “bang” line.
As for creating an application or file, there are two ways to do this. You can create a program using a simple text editor like WordPad, or Notepad++. You can also create a program using a Python shell. There are advantages and disadvantages to each method, which we’ll discuss next.
Python Shell versus Text File
A shell is a program or tool that can be used to interact with a system. For instance, the Windows operating system shell can be tapped into by using a “terminal” or command line to submit commands and arguments.
With Python, things work a bit differently than an operating system shell. The Python shell is used to interact with an interpreter, which feeds code to a computer in a form that it can understand.
When you execute a Python program that you’ve written, the interpreter reads the code and converts it into usable commands. The important thing to note is that all of this is done after the program has been executed.
With a shell, the interpreting – or conversion – happens in real-time as you type the code into the computer or system. This means that the actual program is executing as you type. This gives you some idea of how your final code will look, and what your program is actually going to do.
When you write code in a text file, none of that happens until you feed the document into an interpreter. If you have Python installed on your computer you can call upon the interpreter using a command line, but this step is done after you’ve already written the code.
This makes it more difficult to spot errors in your code, and it can also be frustrating if the interpreter runs into issues, because they may not be as apparent as they would if you had used a shell. Still, a lot of developers prefer to use a text editing tool because it is simple and easy to do.
There are text editors with increased functionality – like Notepad++ – which were specifically developed with programming in mind.
The Best Place to Start
Before you can do anything with a programming language, you first need to configure the development environment. Now, we’re going to cover how to setup Python and the interpreter that will execute your custom programs.
Python comes pre-installed on Mac and a majority of Linux distributions. However, you may need to download an updated version depending on how old your system is.
TIP: You can easily check your Python version by opening the terminal and running the following command:
python -V
If you’re running Windows, you’ll need to download Python from the Python Software Foundation (link below).
How Do I Get Python?
If you need to download Python, the best place to go is the official site. You’ll need to download the version specific to your operating system and processor (32 or 64 bit).
Mac: Most Mac OS X computers already have Python 2.x installed, which is perfectly fine to use. The best way to install the latest version is to use Homebrew to activate and manage them. You’ll find instructions on how to do that here. You can also download Python directly from the PSF if you prefer.
Linux: Python is included with most distributions of Linux. Check your current version and be sure to upgrade using the package manager, if necessary.
Windows: Just download Python from the PSF.
TIP: If you’re using Windows, be sure to select the option that adds Python.exe to your system path during installation. You can do this by selecting the option next to “Add python.exe to path,” and then choosing your local hard drive as the install location.
Which Version Should I Use?
There are two main versions of Python, which can make things confusing for beginners and novice coders. The two versions are Python 2.x and 3.x. The good news is that when it comes to syntax, they are pretty much identical, and it’s acceptable to develop with both versions.
Version 3.5.x of Python (or greater) is currently in active development. This means that it is constantly receiving new features and functionality, as the open source community continues to develop it. If you want bleeding edge in terms of features and support, then 3.5.x is the way to go.
Python versions from 2.7.x to 3.4.x (3.2.x included) are still actively maintained by the community. This is important if you need help or encounter problems. Because it’s been around so long, 2.7.x also has the most support from third-party libraries.
While looking at libraries, if you see they have not been ported to a newer version of Python, you’ll want to stick with the older version.
Most importantly, once you learn one version of Python it’s not difficult to make the jump to another version. If you’re moving up – as in moving to a newer version – you’ll simply need to learn the new features and functions. If you’re moving backward you shouldn’t encounter any problems although you will have to figure out what functions are incompatible with the older version.
Long story short, it’s entirely up to you which version of Python you use! There’s no right or wrong answer, and it’s painless to make the jump from one version to another should you realize you need to do so later on.
Hopefully, you’re ready to dive in and do some hands-on work because next we’re going to cover our Python 101: Beginner’s Tutorial.
Disclosure of Material Connection: Some of the links in the post above are “affiliate links.” This means if you click on the link and purchase the item, I will receive an affiliate commission. Regardless, I only recommend products or services I use personally and believe will add value to my readers.