✏️ 习题

第 7 章 · 面向对象编程 · 共 3 题 · 源自原讲稿

答案默认折叠,点击题目或右侧开关控制显示
展开所有答案
1
输入边长 n,打印对应边长的菱形。利用栈的后进先出原则打印后几行的内容。
▶ 运行结果: * *** ***** ******* ********* ******* ***** *** *
参考答案
python
def diamond(n):
    stack = []
    for i in range(1, 2 * n):
        if i <= n:
            p_str = ' ' * (n - i) + '*' * (2 * i - 1)
            if i != n:
                stack.append(p_str)
            print(p_str)
        else:
            print(stack.pop())

diamond(5)
2
使用 time 模块的 sleep 函数,暂停一秒输出一次当前时间戳的后两位。
▶ 运行结果: 15 16 16
参考答案
python
import time
for i in range(3):
    print(str(int(time.time()))[-2:])
    time.sleep(0.1)
3
暂停一秒输出,并格式化当前时间。
▶ 运行结果: 2026-07-21 08:51:56 2026-07-21 08:51:56 2026-07-21 08:51:56
参考答案
python
import time
for i in range(3):
    print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
    time.sleep(0.1)