Python from Scratch: Getting Started


Welcome to Python from Scratch, where I'm going to teach you the ins and outs of Python development... from scratch.

In this first lesson, we're going to choose a version, install Python, and then create the obligatory "Hello world" script. If you're already familiar with Python, feel free to skip ahead to a later lesson in the series.

Video Tutorial

Subscribe to our YouTube and channels to watch more screencasts.

Companion Article

Choosing a Version

"It's important to choose the right version."

There are two versions of Python that are currently being developed: 2.x and 3.x. It's important to make the right choice ,because there are several differences between the two. Once you've learned one, it can be a bit annoying to have to transition to the other. In this series, we'll be working through version 2.7.1. You may want to go this route in order to follow along with the videos and articles in this series. That said, most things should work with either version. Version two has much more support from third party libraries, whereas version three has more features, and plenty of bug fixes and refinements.

To make things easier, a lot of features that are being added to version three have also being added to version two, so there's less need to worry about the differences.

Installing the Interpreter

Once you've chosen a version, it's time to install. Download the version of Python for your OS, and run the installer which will get it set up on your machine. There are three ways you can now use Python:

  • Python Shell- lets you run commands line by line.
  • IDLE GUI - lets you write more complex scripts, and run them in one go.
  • Text Editor - any text editor that runs on you system. You can then save it with a .py extension, and run it from the shell.

For now, launch the shell to test if it works correctly. On Windows, navigate to the directory you installed Python. By default, it should be C:\Python27 Once there, launch python.exe. If you're on Mac or Linux, launch the Terminal, then type python.

I personally find IDLE to be unpleasant to use; so for most of this series, we're going to be using a standard code editor. If you would rather use an IDE, there are plenty of good ones:

Hello World!

No we're all set up; let's write your first bit of Python! Go to the shell, type print "Hello World!", and hit enter. The phrase Hello World! should appear.

And that's it: it really is as simple as that. You've written your first Python program! Now is a good opportunity to highlight one of the differences beween version two and three: they changed print from a statement to a function. Don't worry too much about what those words mean for now. All you need to know is that, if you chose to use version three, you need to write print("Hello World!") -- the only difference is that you don't use brackets. We'll learn about the technical reasons behind this in a future lesson.


So in this lesson, we set ourselves up with a fresh Python installation, discussed the best tools to write code, and wrote our first program. If you have any questions, I'm happy to answer them in the comments, and I hope you'll join me for the rest of this series.

Related Posts
  • Code
    Web Development
    PHPStorm: When the IDE Really MattersPhpstorm preview
    The IDE that you choose to use day in and day out, can make a big difference in your web dev workflow. PHPStorm offers many wonderful features to improve this process, let's take a look!Read More…
  • Computer Skills
    App Training
    Getting Spiffy With PowerlinePowerline
    That line at the bottom of your editor and the prompt for your favorite shell have one thing in common: information! But, it's not always clear, and it's often hard to change. It's much easier now than ever before to do just that with Powerline. I'll show you how easy it is to take charge of the status line and make it into what you want it to be.Read More…
  • Code
    Web Development
    Easily Deploy Redis Backed Web Apps With DockerDocker wide retina preview
    Learn how to setup and deploy a Redis powered Python web app using Docker.Read More…
  • Code
    Creative Coding
    Creating a TextMate Bundle to Easily Package Your WordPress ProjectTextmate bundle 400
    If you've developed a WordPress theme or plugin, then you know how fast your codebase can grow in just a short amount of time. You start off with just a few PHP, JavaScript and CSS files. Then you find yourself creating image assets and adding them to your codebase together with their Photoshop file counterparts. After a while you'll be including other third-party PHP libraries as well. Then when you're finally ready to ship your WordPress project, you'll end up having a web of multiple file types like *.php, *.css, *.scss, *.js, *.min.js, *.png and *.psd, maybe you'll have some hidden files like .DS_Store. You would eventually need to clean your codebase up before zipping them all up for your users. Normally, this just means that you duplicate your files, then scan each and every directory deleting all the unwanted files. You'd then archive your project then perhaps use a third party app to remove the hidden files. This article will teach you on how to automate this packaging process by building a TextMate Bundle that would do everything for us with a single shortcut key. [tip]This article teaches about some tips regarding TextMate, an awesome code editor for Macs. You can find more information on TextMate from MacroMate's website[/tip]Read More…
  • Code
    Corona SDK
    Getting Started with Lua and the Corona SDK35613 preview image@2x1
    In this tutorial, you will learn the basics of the Lua programming language and I will help you getting started with writing applications for iOS and Android. Excited? Let's dive right in.Read More…
  • Code
    iOS SDK
    Objective-C Succinctly: Introduction0e5ds8 preview image@2x
    Objective-C is the programming language behind native Apple applications. The language was originally designed in the 1980s as a way to add object-oriented capabilities to the ANSI C programming language, and it has since been used to create everything from command-line tools to Mac programs to mobile apps. You can think of Objective-C as Apple's version of the C# programming language.Read More…