Course Code: ipy
Two things that make Python attractive are that it's a free download and that it comes with a free development environment, IDLE. In the first lesson, you'll start off right by going on a brief tour of both the language and the environment. You'll 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. By the end of Lesson 1, you'll be fully prepared to work in IDLE using either method.
Programs aren't terribly useful unless you have some way to store values in memory. In Lesson 2, you'll get up to speed with Python variables, and then you'll learn how to use these variables to get input from the user. With this, you'll 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'll want one set of statements run in one situation and another set run in a different situation. For that, you'll need to use Python's if decision structure. In Lesson 3, you'll 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'll 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'll 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'll learn how to write modular programs by creating functions. You'll 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, next you'll explore object-oriented programming. This is a popular technique, and in Lesson 6, you'll get an introduction to how it's done in Python. You'll learn how to create a class definition and place variables and functions inside. Then later, you'll use this class to create some objects and work with them to solve simple problems.
It's now time to take some of the topics that have been covered and apply them to something a little more creative. In this lesson, you'll explore Python graphics, where you'll create and work with simple shapes and even get a chance to write programs that simulate animation so that you can 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 time to turn to ways of managing your data. In this lesson, you'll look at two of Python's basic data structures: lists and tuples. You'll 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'll 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'll learn how to read from and write to data files. You'll 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.
Programs sometimes encounter problems as they execute. In object-oriented terms, you'd call this an exception. If the exception isn't handled, the program will crash. In this lesson, you'll learn about Python's exceptions and learn how to handle them to keep the program up and running, even when something unexpected happens.
You'll finish the course by exercising the creative part of your brain again. This time, you'll learn how to create a graphical user interface (GUI) in Python. You'll learn how to display text with labels and get user data with text boxes, buttons, radio buttons, and check boxes. Now you'll 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.
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.
There are no prerequisites to take this course.
The instructional materials required for this course are included in enrollment and will be available online.
A new session of each course opens each month, allowing you to enroll whenever your busy schedule permits.
Once a course session starts, two lessons will be released each week for the six-week duration of your course. You will have access to all previously released lessons until the course ends.
The interactive discussion area for each lesson automatically closes two weeks after each lesson is released, so you're encouraged to complete each lesson within two weeks of its release.
The final exam will be released on the same day as the last lesson. Once the final exam has been released, you will have two weeks plus 10 days (24 days total) to complete the final and finish any remaining lessons in your course. No further extensions can be provided beyond these 10 days.
Not having much programming experience in the last 10 years I was pleased with the pace of the lessons. This was a good introduction to the capabilities of Python."
Interesting class, thank you Mike! Even after programming in Python for several years, I learned important aspects of the language. I would recommend this class."
I want to thank Mike for his prompt answers to questions and useful tips on how I could find the answer myself. Overall Mike prepared a fantastic course and was a fantastic instructor."
I had no programming experience in Python before this course and the content of the course has given me a good grasp on programming concepts. I have already recommended this course to my work colleagues."
Very informative class, the intro to object oriented programming was extremely useful for me. The homework assignments are the best parts. They really teach you a lot."
Thank you very much for providing a well organized session. I truly enjoyed the learning phase and it was very easy along the way. This will definitely help me update my skill sets and be more marketable in the job market. Thank you very much!"
Thanks a lot! I really got something out of your course. Your style of explaining things is very approachable and not intimidating. I felt like I could do this and not be intimidated by it. Thanks!"