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)
遇到的错误
words = stuff.split('')
会报错
words = stuff.split('')
ValueError: empty separator
运行部分代码
import ex25
sentence = "all good things come to those who wait,"
words = ex25.break_words(sentence)
words
print(words)
sorted_words=ex25.sort_words(words)
sorted_words
print(sorted_words)
ex25.print_first_word(words)
ex25.print_last_word(words)
ex25.print_first_word(sorted_words)
ex25.print_last_word(sorted_words)
sorted_words
sorted_words=ex25.sort_sentence(sentence)
sorted_words
ex25.print_first_and_last(sentence)
ex25.print_first_and_last_sorted(sentence)
把 ex25.py 当做了一个“模块”来使用,在 import 的时候不需要加 .py 后缀,模块里定义的函数也可以直接调用出来。
sorted() 函数对所有可迭代的对象进行排序操作。
sort() 与 sorted() 的区别:sort() 是应用在 list 上的方法,sorted() 可以对所有可迭代的对象进行排序操作。
list 的 sort() 方法返回的是对已经存在的列表进行操作,而内建函数 sorted() 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
pop() 从列表删除某个元素,一个参数:删除元素的索引值。
Python 索引值从 0 开始,-1 表示最后一个索引值。
split() 通过指定分隔符对字符串进行切片。