All pastes #729997 Raw Edit

Something

public python v1 · immutable
·published 2007-10-08 19:26 UTC
rendered paste body
# ############################################################################ ## Assignment #2# Part 1: warmup.py# Authors: Hardeep Singh and Melissa Gregoire# Date: October 05, 2007## Description:#     Several list/file/string related warmup functions:#       - whereis(str, str)#       - evens(list)#       - reverse(list)#       - cat(file)#       - double_my_digits(str)#       - fix_capitalization(list)## ############################################################################ #def whereis(s1,s2):    '''whereis(str, str)-> int        Returns the index number of the first occurence of the single letter     string s2 in the string s1.'''     if ( type(s1) != str ) or ( type(s2) != str ):        return False        if ( len(s2) != 1 ):        return False        return s1.find(s2)def evens(the_list):    '''evens(list) -> list/boolean        Given a list, returns a new list consisting only of those elements with    an even index. Returns False if the parameter given is not a list.'''        if ( type(the_list) != list ):        return False        new_list = []    for index in range(0, len(the_list)):        if ( index % 2 == 0 ):            new_list.append(the_list[index])        return new_listdef reverse(original_list):    '''reverse(list) - > list/boolean        Given a list, returns a new list in which the elements of the original    list have been reversed. Returns False if the parameter given is not a list.     '''        if ( type(original_list) != list ):        return False     new_list = []    for element in original_list:        new_list.insert(0,element)        return new_listdef cat(text_file):    '''cat(file) -> Boolean        Opens and displays a given text file on screen, line by line. Returns False    if the parameter given is not a file.'''        if ( type(text_file) != file ):        return False        for line in text_file:        # Since python also prints out the carriage return at the end of each        # line of the file, there is no need for us to print out another one        # of our own.        print line,        # Just to make it look neat at the end.    print ''def double_my_digits(input):    '''double_my_digits(str) -> str/boolean        Given a string consisting only of numbers, will return a string obtained by    doubling each digit in the input string. Will return False if the input is    not a string, or contains something other than what is allowed in an int.'''        if ( type(input) != str ):        return False        try:        input = str(int(input))    except ValueError:        return False        new_string = ''    for digit in input:        new_string += str(int(digit) * 2)            return new_stringdef fix_capitalization(the_list):    '''fix_capitalization(list) -> list/boolean        Given a list of strings returns a new list of strings in which the    capitalization of the original strings has been corrected. Returns False if    the parameter given is not a list.'''        if ( type(the_list) != list ):        return False        new_list = []    for string in the_list:        new_list.append(string[0] + string[1:].lower())            return new_list