《 笨方法学 Python 》_ 习题 24 - 25

习题 24:更多练习
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 explanation
\n\t\twhere there is none.
"""

print("--------")
print(poem)
print("--------")

five = 10 - 2 + 3 - 6
print("This shouble 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 beans, %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 crates." % secret_formula(start_point))

习题 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 agter 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)

cmd 输入 python 进入Python 解释器


ex25.py 当做了一个“模块”来使用,在 import 的时候不需要加 .py 后缀,模块里定义的函数也可以直接调用出来。

sorted() 函数对所有可迭代的对象进行排序操作。

sort()sorted() 的区别:sort() 是应用在 list 上的方法,sorted() 可以对所有可迭代的对象进行排序操作。

list 的 sort() 方法返回的是对已经存在的列表进行操作,而内建函数 sorted() 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

pop() 从列表删除某个元素,一个参数:删除元素的索引值。

Python 索引值从 0 开始,-1 表示最后一个索引值。

split() 通过指定分隔符对字符串进行切片。

常见问题回答:

函数里的代码不是只在函数里有效吗?为什么 words.pop(0) 这个函数会改变 words 的内容?

这个问题有点复杂,不过在这里 words 是一个列表,可以对它进行操作,操作结果也可以保存下来,这和操作文件 file.readline() 时的工作原理差不多。

猜你喜欢

转载自blog.csdn.net/yz19930510/article/details/80545412
今日推荐