CSC111 Lab 1 2011

From dftwiki3
Revision as of 07:44, 7 September 2011 by Thiebaut (talk | contribs) (Playing with Strings)
Jump to: navigation, search

--D. Thiebaut 12:12, 6 September 2011 (EDT)


PythonLogo.jpg

FUN WITH PYTHON


This lab is just an introduction to having fun with Python. It's purpose is to have you explore the different systems that are available to you, and get a sense of how to program in an "intuitive" fashion.



Python on the MAC

  • If your computer is not on, turn it ON!
  • When prompted for booting Mac or Windows, select the Mac
  • When prompted for an account and password, use the 111a-xx account that will be given to you in the lab.


CSC111AccountPassword.png


  • Once you see the Desktop, click on the Finder (bottom left icon on the Desktop), and look in the Science Apps folder for Python 3.2.
  • Start IDLE


Tip: if you can't find Idle, use the magnifying glass icon at the top right of the screen and search for idle and you should find it!


Idle

  • Idle is the name of an editor one can use to create Python program on the Mac.
  • If the window you start with looks like this (see below), then use the top menu and click File, New Window to open an editing window.

CSC111 PythonShell.png


  • You should now have two windows on your screen, one the editing window, the other the shell window, where the program will send its output.

CSC111 PythonEditShellWindows.png


Some Python Code to play with

Playing with numbers

  • Enter the following code in the Untitled window:
a = 3
b = 5
c = 10
print( a, b, c, a+b+c )
  • Press F5 to run the program. When prompted to save the program, save it as lab1.py
  • Look at the Console window. Some numbers appear... Do they make sense?
  • change the numbers that are assigned to a, b, or c and see how your program reacts when you run it.

Using Strings of characters

  • Modify the print statement so that it reads like this:
print (a, b,  c, "sum = ", a+b+c )
  • Run your new program. Do you understand how your modification made the program run differently? Does the output still make sense? Don't worry too much for today if it doesn't. Be sure to ask questions to your instructor or to the TAs if you're unsure about anything.
  • Another modification. Replace your print statement by two statements:
print( a, b, c )
print( "sum = ", a+b+c )
  • Run your program again. How does having a second print statement modify the behavior of your program?


Challenge #1

QuestionMark1.jpg
  • Now, use your intuition and what you have just learned and see if you can modify your program to make it display this output:
a = 3
b = 10
c = 20
sum = 33
  • Keep at it if you don't get there right away. Remember, this is a language, and you have many different ways to say the same thing...

Playing with Strings

  • The goal of this section if for you to modify your program and try different Python statements and use intuition to understand how they work, and how the Python language is organized.
  • Type the following three lines of code in your program (you can keep the old lines and add new lines at the end, or you can erase everything and type the new ones), and run the program.
print( "hello" )
print( "hello", "there!" )
print( "hello" + "there!" )
  • Observe how the different ways to write the print statments influence how the information is printed.
  • Now, try these lines of code:
word1 = "hello"
word2 = "there!"
print( word1, word2 )
print( word1, "who is", word2 )




Question: What is the role of word1 or word2 in the program?




Question: What is the role of the double quote character in Python?




Challenge #2

QuestionMark2.jpg
  • Modify your program but keep the two variables word1 and word2, and make it print this:
  hello there!
  there! hello
  hello hello hello
  hello there! there! hello

Repeating Strings

  • Try this:
word1 = "hello"
print( word1 * 2 )
print( word1 * 5 )
print( word1 * 10 )
  • See how you can multiply a string?

Challenge #3

QuestionMark3.jpg
  • Modify your program and make it print this:
hello hello hello hello there! 
hello there! there! there! there! there! hello

Playing with Lists and Loops

  • Replace your program with this new piece of code:
list = [ "Lea Jones", "Julie Fleur", "Anu Vias" ]
for name in list:
    print( name )


Observe that the line that starts with print is indented from the line that starts with for. This is a very important detail: Python uses indentation to influence how statements depend on each other.


  • Press F5. Observe the output.
  • Add a few other names to the list and make sure your program outputs them all one above the other.
  • Try this new twist:
list = [ "Lea Jones", "Julie Fleur", "Anu Vias" ]
for name in list:
    print( name )
    print( "-" )



Challenge #4

QuestionMark4.jpg

Challenge #1

Challenge #1

Challenge #1

Challenge #1

Challenge #1

Useful Links

  • If you want to install Python 3 on your Mac or Windows laptop/desktop, check out this page and follow the links for the appropriate operating system.