Learn Python The Hard Way学习(25) - 甚至更多的练习

我们要做更多关于函数和变量的练习,以便我们能更好的掌握它们,这个练习非常直接了当,输入,分析,理解。

当然,这个例子有些不同,我们不能直接运行它,需要导入并运行里面的函数。
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.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)

首先用python ex25.py运行一下,看看有没有报错,如果有请仔细检查并修正。

运行结果
在python解析器中运行。
root@he-desktop:~/mystuff# python
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ex25
>>> sentence = "All good things come to those wait."
>>> words = ex25.break_words(sentence)
>>> words
['All', 'good', 'things', 'come', 'to', 'those', 'wait.']
>>> sorted_words = ex25.sort_words(words)
>>> sorted_words
['All', 'come', 'good', 'things', 'those', 'to', 'wait.']
>>> ex25.print_first_word(words)
All
>>> ex25.print_last_word(words)
wait.
>>> words
['good', 'things', 'come', 'to', 'those']
>>> ex25.print_first_word(sorted_words)
All
>>> ex25.print_first_word(sorted_words)
come
>>> ex25.print_last_word(sorted_words)
wait.
>>> sorted_words
['good', 'things', 'those', 'to']
>>> sorted_words = ex25.sort_sentence(sentence)
>>> sorted_words
['All', 'come', 'good', 'things', 'those', 'to', 'wait.']
>>> ex25.print_first_and_last(sentence)
All
wait.
>>> ex25.print_first_and_last_sorted(sentence)
All
wait.
>>>
root@he-desktop:~/mystuff#

分析程序:
  • 先用import导入ex25.py文件,不用.py的后缀,这样你就可以使用这个module里面的所有函数了。
  • 定义sentence变量。
  • ex25.break_words,使用ex25.py中方法。
  • 打印words,打印出的信息有点怪,这是一个list,马上会学到。
  • 下面的都差不多,都是调用函数,然后打印变量。
  • 有一点要注意,当我们调用打印first和last函数的时候,会把list中的元素删除。

加分练习
1. 注释中指明了每个函数的作用,保证你能理解每个函数。

2. 试一下:help('ex25')和help('ex25.break_words'),这是模块的帮助功能,会打印模块函数中"""包含的注释,后面我们经常用。

3. 可以使用from ex25 import *的方法导入ex25中的所有函数。

4. 你可以使用Ctrl+d结束python解析器。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值