Pytuts

From CoolWiki
Revision as of 17:14, 30 May 2014 by Ali (talk | contribs)
Jump to navigationJump to search

Python programming for non-programmers

This tutorial series will walk you through the very basics of computer programming using the python scripting language. The course is targeted towards the complete novice programmer. That is, someone who has never programmed in any language, or has very little experience in programming.

Programming is an essentially requirement for modern scientific research. Python, in particular, is heavily used in astronomy for its relative ease of use and power.


Registration

You are not required to register for the course, but it will be helpful for me to know how many will attend in person. To do that,

please send me and e-mail at babar@ipac.caltech.edu with your e-mail address and use the subject line: nitarp python.

Prerequisites

To join the online course and participate in python programming exercises, you will need the following:

  • Python installed on your computer. We will use the anaconda distribution
http://continuum.io/downloads
How do I know its installed and ready to be used Or, testing your python.
  • webEx software. We will use this online collaboration tool for viewing the presentation. You don't need to do anything right now. But, be prepared to let webEx download their app on your computer on the first session. I'll allow time to tweak webEx installation during the first session.
  • Audio: You need a phone connection to dial into a toll-free number for 1-1.5 hours.


Instructions for joining the live sessions

To join live to view the presentation slides:

  • go to http://caltech.webex.com on the day and time of the session.
  • If requested, enter your name and e-mail address.
  • Enter the meeting password
  • Click "Join"
  • Please ignore whatever pleas webEx makes about connecting to the audio channel by selecting 'NO' or 'Cancel', or whatever other appropriate options gets you out of the audio line. Using webEx audio is expensive. Instead, use the audio line instructions listed below.

NOTE:

  • If this is your first webEx call, a java-based app will be installed on your computer.
  • By default video will be ON if your computer is equipped with it.

To join live to the audio line.

  • dial 866-524-3365
  • Enter telecon code.

NOTE: Password and telecon code will be sent to those who provide me with their e-mail addresses.


Tentative schedule

Session 1: Introduction to programming, spyder and python.

Tuesday, 5/27/2014
3:30 pm, PDT = 6:30 pm, EDT
File:Python-tutorial-1.pdf
[to youtube video]
Exercises:
What is the maximum? You are given a list of numbers. Describe (no programming here) how you will determine which of the numbers is the largest. I am looking for step-by-step direction at the very basic level. If your answer is something like "I will sort the numbers ....", you are on the wrong track. I am asking how you will start to sort the numbers to begin with. The answer I am looking is more along these lines: 'Take the first two numbers. Compare the first two numbers, etc.'
Solutions


Session 2: Data, variables, and mathematical operations.

Tuesday, 6/3/2014
3:30 pm, PDT = 6:30 pm, EDT
Link to Presentation
Exercises:
Solutions


Session 3: Controlling your program's flow.

Tuesday, 6/10/2014
3:30 pm, PDT = 6:30 pm, EDT
Link to Presentation
Exercises:
Solutions


Session 4: Working with files and functions.

Tuesday, 6/17/2014
3:30 pm, PDT = 6:30 pm, EDT
Link to Presentation
Exercises:
Solutions


Session 5: Plotting and other miscellanea.

Tuesday, 6/24/2014
3:30 pm, PDT = 6:30 pm, EDT
Link to Presentation
Exercises:
Solutions


Previous incarnatation

You can look a previous incarnation of this tutorial series for the NITARP/SHIPs program for a more specific idea about the course.

http://coolwiki.ipac.caltech.edu/index.php/PythonOnSHIPs