您的位置:首页 > 编程语言 > Python开发

《笨办法学python》加分习题26——我的答案

2017-08-30 15:53 441 查看
停了一周多了吧,怪自己没恒心。又一次停这么久,真是抱歉,最近手头事比较多,可能目前也就是短短续续的更一些。总而言之,我对自己很抱歉。

我自己改正后的程序:

先感谢下菜鸟教程和廖雪峰教程,非常好!

# -- coding: utf-8 --
import ex25
def break_words(stuff):
"""This function will break up words for us."""
# 语法:str.split(str="", num=string.count(str))
# split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串
words = stuff.split(' ')
return words

def sort_words(words):
"""Sorts the words."""
# 排列算法,python中自带。功能强大,可以接受比较函数开自定义排序。
# 详https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001418612033918f1f341b1e0f14762a118891fa52949aa000
return sorted(words)

def print_first_word(words):
"""Prints the first word after popping it off."""
# pop()用于将这个元素从list中移出,并返回该元素的值。(默认为最后一个元素)
# 语法:list.pop(obj=list[-1])
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_
4000
first_and_last_sorted(sentence):
"""Sorts the words then prints the first and last one."""
words = sort_sentence(break_words(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 + 2 - 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_point)

sentence = "All good things 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)
print sorted_words

print_first_and_last(sentence)

print_first_and_last_sorted(sentence)


这是我自己改的,用的软件编辑器是Pychram。用编译器会比较快的发现语法错误,算是偷懒吧。其他非语法错误我也就找到一些,望你们有找到请告诉我,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: