26是改错习题,提供了一段有问题的代码进行修正。
*原版为python2.x的版本,3.x版本中print需要添加括号,修正中不重复指出。
原来的代码
def break_words(stuff):
"""This function will break up words for us."""
words = stuff.split(' ')
return words
def 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 word
def print_last_word(words):
"""Prints the last word after popping it off."""
word = words.pop(-1
print word
def 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 world
with logic so firmly planted
cannot discern \n the needs of love
nor comprehend passion from intuition
and requires an explantion
\n\t\twhere there is none.
"""
print "--------------"
print poem
print "--------------"
five = 10 - 2 + 3 - 5
print "This should be five: %s" % five
def secret_formula(started):
jelly_beans = started * 500
jars = jelly_beans \ 1000
crates = jars / 100
return jelly_beans, jars, crates
start_point = 10000
beans, jars, crates == secret_formula(start-point)
print "With a starting point of: %d" % start_point
print "We'd have %d jeans, %d jars, and %d crates." % (beans, jars, crates)
start_point = start_point / 10
print "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)
print_first_word(words)
print_last_word(words)
.print_first_word(sorted_words)
print_last_word(sorted_words)
sorted_words = ex25.sort_sentence(sentence)
prin sorted_words
print_irst_and_last(sentence)
print_first_a_last_sorted(senence)
修正后的代码
# coding:utf-8
# ex 26
def break_words(stuff):
"""This function will break up words for us."""
words = stuff.split(' ')
return words
def sort_words(words):
"""Sorts the words."""
return sorted(words)
#定义方法缺了一个冒号
def print_first_word(words):
"""Prints the first word after popping it off."""
#pop拼写错误
word = words.pop(0)
print (word)
def print_last_word(words):
"""Prints the last word after popping it off."""
#缺了一半括号
word = words.pop(-1)
print (word)
def 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 world
with logic so firmly planted
cannot discern \n the needs of love
nor comprehend passion from intuition
and requires an explantion
\n\t\twhere there is none.
"""
print ("--------------")
print (poem)
print ("--------------")
#算式错误
five = 10 - 2 + 3 - 6
print ("This should be five: %s" % five)
def secret_formula(started):
jelly_beans = started * 500
#计算符号错误
jars = jelly_beans / 1000
crates = jars / 100
return jelly_beans, jars, crates
start_point = 10000
#【=】写成了【==】,【_】写成了【-】
beans, jars, crates = secret_formula(start_point)
print ("With a starting point of: %d" % start_point)
print ("We'd have %d jeans, %d jars, and %d crates." % (beans, jars, crates))
start_point = start_point / 10
print ("We can also do that this way:")
#point拼写错误,漏了一个括号
print ("We'd have %d beans, %d jars, and %d crabapples." % secret_formula(start_point))
sentence = "All god\tthings come to those who weight."
#方法本来就在本文件中,去掉前缀【ex25.】
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)
#方法本来就在本文件中,去掉前缀【ex25.】
sorted_words = sort_sentence(sentence)
#print拼写错误
print (sorted_words)
#first拼写错误
print_first_and_last(sentence)
#多了一个的tab,and拼写错误,sentence拼写错误
print_first_and_last_sorted(sentence)