Thursday, January 5, 2012

csci133c1.py

In the first program we are going to start with "Hello World", in python it is actually really simple to do. Type the below code into the file, and press save and run!
# Example: Hello World
print('Hello World! Python is fun!')
Output:
Hello World! Python is fun!
Notice in the single quote signs, what is between ' ' is viewed as a sequence of characters. Unlike in C++, python is an interrupt language, we don't need to complie, we just need to save and run it. (Control + Save) Then (F5) And in python, you can comment with " # " sign, the python will not do anything to that line, it is for reference and notes. It is always good habit to document your code, and keep the comments outdated when you make changes.

Let's create a string variable name food, and we print "I like that food".
# Example: Printing with variable
food = 'cookies'
print('I like', food)
Output:
I like cookies
Here there we learn two things, one is the way the python declare the variable, without a type. It takes care of figuring out what is the type, base on what you give it. In this case the food is a string variable, and the way to include the variable in the print, we separate it with a comma (,).  And let's take a closer look at the first line, the equal sign does not mean food is equal to cookies, rather it mean we assign cookies to the object data named food. There is a difference there, it would be best if we read it as, "food is the name of the string for cookies", or "cookie is now food" in our program. Below is another example to demonstrate how to use a few variable at the time in the print.
# Example: What do you eat everyday?
breakfast = 'milk'
lunch = 'burger'
dinner = 'steak'
print('I eat', breakfast, lunch, dinner, 'everyday.')
Output:
I eat milk, burger, steak everyday.
This example we can see we can chain more variables in the print statement, you can do it with different variables if you have other. And take a note on the following piece of example, guess what is the output?
# Little Quiz 
breakfast = egg
print('Today"'"s breakfast:', breakfast
breakfast = sandwich
print('Today"'"s breakfast:', breakfast
Can you guess what is the output?
Here is the answer!
Today's breakfast: egg
Today's breakfast: sandwich
If you guessed correctly, good job! And if you wonder why I used double quotes ( " ), it is because it is the only way to print single quote. You need to wrap the single quote in a double quotes. "'". Try it and see if it works!

But it is kind of hard to type out all this, if we have many many different kind of food for breakfast, what if we have 5 different foods, do we need to write 5 identical print lines? The answer is no! Check out the following example.
# Simple for loop example
foods = ['egg', 'juice', 'apple', 'bread', 'cookies']
for food in foods:
    print('Today"'"s breakfast:', food)
Output
Today's breakfast: egg
Today's breakfast: juice
Today's breakfast: apple
Today's breakfast: bread
Today's breakfast: cookies
Don't you think it is a lot easier this way? And feel free to type your own favorite food for breakfast. For these who are new to python programming, there is actually a lot going on in this example.
  1. The object we created in the example above is a list, in this case it is a list contain 5 string objects, a list is a sequence of objects. We create list in python by separating the string objects with commas, and enclose the sequence with square brackets. Another example of a list contain 2 student: ['Sam', 'Kelly']
  2. You can create a list of other types too, with integers, whole numbers, such as 1, 2, 3, 4, 5, including negative numbers too. Example: dates = [1, 5, 12, 19, 20]. We have here a list object name dates, containing 5 integers.
  3. There is control statement, or as call it, a for loop. The structure of the statement is like this:
    # Example for a for loop control statement
    for object in objects:
    <Indentation> statement
    <Indentation> statement
    The python only know the statement is "inside" a loop when you indent it, otherwise it has no way of knowing. It is different from say other language like C++, as they use {} to create a block of code. And although we don't have to end every single statement with " ; ", but in the case for the loop, we need to add a colon " : ", to let python know this is the end of the condition. I provide readers with a few more example here:
    # Always object for object(s)
    for line in lines:
    <Indentation> statement
    
    for car in cars:
    <Indentation> statement
    
    for class in classes:
    <Indentation> statement 
However, python doesn't care what name we use, just like in other programming language, the name (identifier) is for the programmers (human) to read. So there is nothing stopping you to do something silly like this.
# A really bad example
aawhjwb = [1, 5, 20, 55]
for bbb in aawhjwb:
    print('Visit doctor at: ', bbb, 'of this month')
But it will be very hard to remember what is going on, so try to use something that make sense, that way it is easier to debug and for other programmers to read your code. Please do not do not do this.

Practice Problem:
Write a program that produce the following output:
Tip: Create a list contain 3 student's name.
Hello George
Hello Peter
Hello Joe
Write a program that produce the following output:
Tip: To print an empty line, do print(), this will produce an empty line
Red Car
Red Truck
Red Tank
Red Boat

Blue Car
Blue Truck
Blue Tank 
Blue Boat

Green Car
Green Truck
Green Tank
Green Boat

No comments:

Post a Comment