首页 > 代码库 > ex26 纠正练习

ex26 纠正练习

  题目中给出的代码如下:

def break_words(stuff):    """This function will break up words for us."""    words = stuff.split( )    return wordsdef sort_words(words):    """Sorts the words."""    return sorted(words)def print_first_word(words)
  #后面少一个分号。
"""Prints the first word after popping it off.""" word = words.poop(0) print worddef print_last_word(words): """Prints the last word after popping it off.""" word = words.pop(-1
  #上面少了半个括号 print worddef sort_sentence(sentence): """Takes in a full sentence and returns the sorted words.""" words = break_words(sentence) return sort_words(words)def print_first_and_last(sentence): """Prints the first and last words of the sentence.""" words = break_words(sentence) print_first_word(words) print_last_word(words)def print_first_and_last_sorted(sentence): """Sorts the words then prints the first and last one.""" words = sort_sentence(sentence) print_first_word(words) print_last_word(words)print "Let‘s practice everything."print You\‘d need to know \‘bout escapes with \\ that do \n newlines and \t tabs.poem = """\tThe lovely worldwith logic so firmly plantedcannot discern \n the needs of lovenor comprehend passion from intuitionand requires an explantion\n\t\twhere there is none."""print "--------------"print poemprint "--------------"five = 10 - 2 + 3 - 5print "This should be five: %s" % fivedef secret_formula(started): jelly_beans = started * 500 jars = jelly_beans \ 1000
#这里\应该为/,在一般情况下\代表转移。 crates = jars / 100 return jelly_beans, jars, cratesstart_point = 10000beans, jars, crates == secret_formula(start-point)
#这里面函数变量写错了,应该为start_point
print "With a starting point of: %d" % start_pointprint "We‘d have %d jeans, %d jars, and %d crates." % (beans, jars, crates)start_point = start_point / 10print "We can also do that this way:"print "We‘d have %d beans, %d jars, and %d crabapples." % secret_formula(start_pont#这一样少了一个括号。sentence = "All god\tthings come to those who weight."words = ex25.break_words(sentence)sorted_words = ex25.sort_words(words)
#
本练习中没引进ex25,所有有两种修改方法import ex25,我选用的是去掉ex25.
print_first_word(words) print_last_word(words) .print_first_word(sorted_words)
#本行多了一个.print_last_word(sorted_words)
sorted_words
= ex25.sort_sentence(sentence)
#本练习中没引进ex25,所有有两种修改方法import ex25,我选用的是去掉ex25.prin sorted_words#上面的关键字print错误print_irst_and_last(sentence) print_first_a_last_sorted(senence)
#上面一行缩进存在问题

 

 

修正后

#!/usr/bin/env python# -*- coding:utf-8 -*-def break_words(stuff):    """This function will break up words for us."""    b_words = stuff.split( )    return b_wordsdef sort_words(s_words):    """Sorts the words."""    return sorted(s_words)def print_first_word(pf_words):    """Prints the first word after popping it off."""    pf_word = pf_words.pop(0)    print pf_worddef print_last_word(pl_words):    """Prints the last word after popping it off."""    pl_word = pl_words.pop(-1)    print pl_worddef sort_sentence(in_sentence):    """Takes in a full sentence and returns the sorted words."""    out_words = break_words(in_sentence)    return sort_words(out_words)def print_first_and_last(_sentence):    """Prints the first and last words of the sentence."""    _words = break_words(_sentence)    print_first_word(_words)    print_last_word(_words)def print_first_and_last_sorted(pf_sentence):    """Sorts the words then prints the first and last one."""    pf_words = sort_sentence(pf_sentence)    print_first_word(pf_words)    print_last_word(pf_words)print "Let‘s practice everything."print You\‘d need to know \‘bout escapes with \\ that do \n newlines and \t tabs.poem = """\tThe lovely worldwith logic so firmly plantedcannot discern \n the needs of lovenor comprehend passion from intuitionand requires an explantion\n\t\twhere there is none."""print "--------------"print poemprint "--------------"five = 10 - 2 + 3 - 5print "This should be five: %s" % fivedef secret_formula(d_started):    d_jelly_beans = d_started * 500    d_jars = d_jelly_beans / 1000    d_crates = d_jars / 100    return d_jelly_beans, d_jars, d_cratesstart_point = 10000beans, jars, crates = secret_formula(start_point)print "With a starting point of: %d" % start_pointprint "We‘d have %d jeans, %d jars, and %d crates." % (beans, jars, crates)start_point /= 10print "We can also do that this way:"print "We‘d have %d beans, %d jars, and %d crabapples." % secret_formula(start_point)sentence = "All god\tthings come to those who weight."words = break_words(sentence)sorted_words = sort_words(words)print_first_word(words)print_last_word(words)print_first_word(sorted_words)print_last_word(sorted_words)sorted_words = sort_sentence(sentence)print sorted_wordsprint_first_and_last(sentence)print_first_and_last_sorted(sentence)

 

ex26 纠正练习