Details

The Python programming language was developed to provide a way to develop code that's easy to create and understand. While Python contains the same basic structures as other languages, it also offers unique functionality that makes your life as a programmer easier.

This course will show you how to create basic programming structures like decisions and loops. Then, you will move on to more advanced topics such as object-oriented programming with classes and exceptions. In addition, you will explore unique Python data structures such as tuples and dictionaries. You will even learn how to create Python programs with graphic elements that range from simple circles and squares to graphical user interface (GUI) objects like buttons and labels.

Whether you're interested in writing simple scripts, full programs, or graphical user interfaces, this course will give you the tools you need to use Python with skill and confidence.

Syllabus

Two things that make Python attractive are that it's a free download and that it comes with a free development environment, IDLE. Your first lesson starts off with a brief tour of both the language and the environment. You will see that with IDLE, you can either execute individual statements directly at the interpreter's prompt or save your commands in a program file to be run later.

Programs aren't terribly useful unless you have some way to store values in memory. In Lesson 2, you will get up to speed with Python variables, and then you will learn how to use these variables to get input from the user. With this, you will be able to write Python code to make your programs interactive, making them more useful and a lot more interesting.

There are many times when you will want one set of statements run in one situation and another set run in a different situation. For that, you will need to use Python's if decision structure. In Lesson 3, you will practice with Python's if syntax and learn how to write both simple and complex conditions to select which statements should be run.

Keeping with the theme of programming structures, this lesson is all about the repetition structure. You will learn how to write both while and for loops in Python so that your statements can be repeated over and over until some condition is met. You will also learn some looping features that are unique to Python that help to make your programs more powerful.

Modular programming gives you the ability to write code once, give it a name, and then call on it by name at a later time. In Lesson 5, you will learn how to write modular programs by creating functions. You will also learn how to pass data into the functions and then to return values back, building on this knowledge as you proceed through the course.

Building on the concept of modular programming, this lesson explores object-oriented programming. This is a popular technique and you will get an introduction to how it's done in Python. You will learn how to create a class definition and place variables and functions inside. Then later, you will use this class to create some objects and work with them to solve simple problems.

It's time to take some of the topics previously covered and apply them to something a little more creative. This lesson focuses on Python graphics. You will create simple shapes and practice writing programs that simulate animation. By the end of the lesson, you will be able to watch your shapes move across the screen.

Now that you're comfortable with the decision and repetition structures, as well as ways to organize your code, it's now time to turn to ways of managing your data. This lesson looks at two of Python's basic data structures: lists and tuples. You will learn how to create these types of variables and use them to manage data for your programs.

While lists and tuples are useful structures, they put the burden on you to keep track of your data's position within the structure. However, the dictionary structure gives you the ability to associate a word with each piece of data. In this lesson, you will learn how to use dictionaries to write useful programs in fewer lines of code that'll execute in a shorter amount of time.

Programs that work with data in memory are great. However, it's also important to be able to save the data in a file for later use. In Lesson 10, you will learn how to read from and write to data files. You will also learn about Python's shelve feature, which is a database-like file that allows for quick and easy access to large amounts of data.

Unfortunately, programs sometimes encounter problems. In object-oriented terms, you would call this an exception. If the exception isn't handled, the program will crash. In this lesson, you will learn about Python's exceptions and learn how to handle them to keep the program up and running, even when something unexpected happens.

You will finish the course by exercising the creative part of your brain again. This time, you will learn how to create a graphical user interface (GUI) in Python. Now you will be able to integrate all the conceptual material that you learned in the course with an attractive, easy to use interface to make for useful, interactive programs.

Requirements

Requirements:

Hardware Requirements:

This course can be taken on either a PC or Mac.

Software Requirements:

PC: Windows XP or later.

Mac: OS X Snow Leopard 10.6 or later.

Browser: The latest version of Google Chrome or Mozilla Firefox are preferred. Microsoft Edge and Safari are also compatible.

You will need Python 3.X (3.1, 3.2, or a later version), which you can download free of charge here.

Software must be installed and fully operational before the course begins.

Other:

Email capabilities and access to a personal email account.

Prerequisites:

There are no prerequisites to take this course.

Instructional Material Requirements:

The instructional materials required for this course are included in enrollment and will be available online.

Instructor

Mike Orsega has a Bachelor's Degree in Physics from Pennsylvania State University and a Master's Degree in Applied Math from the University of Georgia. He is currently working on a Ph.D. in Computer Science at the University of Tennessee. Mike teaches programming both online and in the classroom and has more than five years of online teaching experience in subjects ranging from basic computer literacy to C# and Alice programming.

Reviews

This was a GREAT class!!! I've been working with Python for a few years and I'm still learning. I was pleased with everything about this course. I like the short lessons, gives it time to sink in. I feel that Mike covered a wide range of Python in simple, realistic examples. I would definitely recommend this course to others.

I really enjoyed taking the class! The lessons were composed into bite sized chunks good for beginners. I came in with no real understanding of programming in general and leave now with a good general understanding of the basics.

This was my first online class and it won't be my last. I had started reading three books but couldn't really grasp the concepts. I got stuck and couldn't ask anyone. Then I took this course. Even though I'm reading text like in a book, I really feel like the instructor is talking and relating to me. I can ask questions in the discussion area and read other peoples questions. Really cool!

I especially liked the way the instructor paced the lessons. They weren't so complicated and involved that you had to burn the midnight oil in order to complete them. There was enough material covered, to be able to start learning some advanced Python subjects on your own.

This course was perfect! I loved the writing style of the lessons. They were easy to follow, as well as easy to relate to. It was done in a very personal way. Even though this was an online class, I still felt like I got to know the professor/instructor and his personality.