Differences between revisions 5 and 6
Revision 5 as of 2007-05-27 02:06:02
Size: 2725
Editor: c-68-55-114-201
Comment:
Revision 6 as of 2007-05-27 02:16:43
Size: 3169
Editor: c-68-55-114-201
Comment:
Deletions are marked like this. Additions are marked like this.
Line 97: Line 97:
    ------ 12
    def sieveOfEratosthenes(candidates):
        i = 0
        while True:
            divisor = candidates[i]
            if divisor * divisor > candidates[-1]:
                return candidates
            else:
                i += 1
            candidates = candidates[:i] + \
                [num for num in candidates[i:]
                    if num % divisor != 0]
    print sieveOfEratosthenes(range(2,100))

These Python examples follow the convention that each program gets one line longer than the one before it. Please try to maintain this convention. I also try to introduce at least one new feature in each program.

    ------ 1
    print 'hello world'

    ------ 2
    for name in ('peter', 'paul', 'mary'):
        print name

    ------ 3
    # This is a Python comment. \n is a newline
    name = raw_input('What is your name?\n')
    print 'Hi', name

    ------ 4
    parent_rabbits, baby_rabbits = (1, 1)
    while baby_rabbits < 100:
        print 'This generation has %d rabbits' % baby_rabbits
        parent_rabbits, baby_rabbits = (baby_rabbits, parent_rabbits + baby_rabbits)


    ------ 5
    # def defines a method in Python
    def tax(item_charge, g = 0.05):
        return item_charge * g
    print '%.2f' % tax(11.35)
    print '%.2f' % tax(40.00, 0.08)


    ------ 6
    import re
    for test_string in [ '555-1212', 'ILL-EGAL']:
        if re.match('\d\d\d-\d\d\d\d$', test_string):
            print test_string, 'is a valid US local phone number'
        else:
            print test_string, 'rejected'

    ------ 7
    prices = {'apple': 0.40, 'banana': 0.50}
    my_purchase = {
        'apple': 1,
        'banana': 6}
    grocery_bill = sum([prices[fruit] * my_purchase[fruit]
        for fruit in my_purchase])
    print 'I owe the grocer $%.2f' % grocery_bill


    ------ 8
    #!/usr/local/bin/python
    # This program adds up integers in the command line
    import sys
    try:
        total = sum([int(arg) for arg in sys.argv[1:]])
        print 'sum =', total
    except:
        print 'Please supply integer arguments'


    ------ 9
    # indent your Python code to put into an email
    import glob
    python_files = glob.glob('*.py')
    python_files.sort()
    for fn in python_files:
        print '    ------'
        for line in open(fn):
            print '    ' + line.rstrip()
        print

    ------ 10
    import time
    now = time.localtime()
    hour = now.tm_hour
    if hour < 8: print 'sleeping'
    elif hour < 9: print 'commuting'
    elif hour < 17: print 'working'
    elif hour < 18: print 'commuting'
    elif hour < 20: print 'eating'
    elif hour < 22: print 'resting'
    else: print 'sleeping'

    ------ 11
    REFRAIN = '''
    %d bottles of beer on the wall,
    %d bottles of beer,
    take one down, pass it around,
    %d bottles of beer on the wall!
    '''
    bottles_of_beer = 99
    while bottles_of_beer > 1:
        print REFRAIN % (bottles_of_beer, bottles_of_beer,
            bottles_of_beer - 1)
        bottles_of_beer -= 1

    ------ 12
    def sieveOfEratosthenes(candidates):
        i = 0
        while True:
            divisor = candidates[i]
            if divisor * divisor > candidates[-1]:
                return candidates
            else:
                i += 1
            candidates = candidates[:i] + \
                [num for num in candidates[i:]
                    if num % divisor != 0]
    print sieveOfEratosthenes(range(2,100))

SimplePrograms (last edited 2019-11-09 23:29:53 by FrancesHocutt)

Unable to edit the page? See the FrontPage for instructions.