《像计算机科学家一样思考Python》——3.16 练习

简介:

本节书摘来自异步社区《像计算机科学家一样思考Python》一书中的第3章,第3.16节,作者[美]Allen B. Downey,赵普明 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

3.16 练习

练习3-3

Python提供了一个内置函数len,返回一个字符串的长度。所以len('allen')的值是5。

编写一个函数right_justify,接收一个字符串形参s,并打印出足够的前导空白,以达到最后一个字符显示在第70列上。

>>> right_justify('allen')
                                   allen

练习3-4

函数对象是一个值,你可以将它赋值给变量,或者作为实参传递。例如do_twice是一个函数,接收一个函数对象作为实参,并调用它两次:

def do_twice(f):
   f()
   f()

下面是一个使用do_twice来调用一个print_spam函数两次的示例:

def print_spam():
   print 'spam'

do_twice(print_spam)

1.将这个示例存入脚本中并测试它。

2.修改do_twice,让它接收两个实参,一个是函数对象,另一个是一个值,它会调用函数对象两次,并传入那个值作为实参。

3.编写一个更通用的print_spam,叫做print_twice,接收一个字符串形参,并打印它两次。

4.使用修改版的do_twice来调用print_twice两次,并传入实参'spam'。

5.定义一个新的函数do_four,接收一个函数对象与一个值,使用这个值作为实参调用函数4次。这个函数的函数体应该只有两个语句,而不是四个。
练习3-5

这个练习可以只用语句和我们已经学过的其他语言特性实现。

1.编写一个函数,绘制如下的表格:


screenshot

提示:

要在同一行打印多个值,你可以使用逗号分隔不同的值:

print '+','-'

如果值序列的结尾有一个逗号,Python不会换行,所以后面的打印语句会出现在同一行。

print '+',
print '-'

这两个语句的输出是'+ -'。

2.编写一个函数绘制类似的表格,但有4行4列。

相关文章
|
2月前
|
Python
Python:函数篇(每周练习)
Python:函数篇(每周练习)
91 1
|
2天前
|
网络安全 Python
网安之python基础学习练习(2-3)
本篇博文是关于网络安全课程中Python编程的学习实践总结。分享关于两个练习题目及其解决方案。第一个题目要求用户输入姓名并选择一项武技,使用for循环和if判断实现。第二个题目是删除列表中特定值(如'cat')的所有元素,作者展示了两种方法,包括列表推导式和常规循环删除。接下来,文章还介绍了如何编写一个函数,随机生成一副扑克牌(除大小王),并返回一张随机抽取的牌。
|
2天前
|
存储 网络安全 索引
网安之python基础学习练习(1)
本篇博文是关于网络安全课程中Python编程学习的总结,主要内容包括:1) 常见数据类型的回顾和应用,如数字(整数、浮点数、复数)、字符串、列表、元组、集合、字典和布尔类型;2) 数据类型的实例操作,展示如何创建和使用这些类型;3) 数值类型之间的加、减、乘、除和模运算;4) 列表和元组的索引访问;5) 字典的修改,如查看键和值,以及更新值。文章强调了基础知识的重要性,并以“自满必定失败,骄傲必定后悔”作为每日一言。
|
16天前
|
存储 索引 Python
Python从入门到精通——1.3.1练习编写简单程序
Python从入门到精通——1.3.1练习编写简单程序
|
24天前
|
Python
python 格式化、set类型和class类基础知识练习(下)
python 格式化、set类型和class类基础知识练习(下)
24 0
|
24天前
|
索引 Python
python 格式化、set类型和class类基础知识练习(上)
python 格式化、set类型和class类基础知识练习
60 0
|
24天前
|
Python
python 文件操作和学生管理系统练习
python 文件操作和学生管理系统练习
22 0
|
3月前
|
Python
Python猜字游戏是一种常见的编程练习
Python猜字游戏是一种常见的编程练习
27 2
|
3月前
|
机器学习/深度学习 人工智能 算法
【Python】编程练习的解密与实战(四)
【Python】编程练习的解密与实战(四)
39 0
|
3月前
|
机器学习/深度学习 人工智能 算法
【Python】编程练习的解密与实战(二)
【Python】编程练习的解密与实战(二)
53 0