【练习题】第十六章--类和函数(Think Python)

class Time:
    hour=0
    minute=0
    second=0

def print_time(t):
    print("%.2d:%.2d:%.2d"%(t.hour,t.minute,t.second))

def is_after(t1,t2):
    return (t1.hour,t1.minute,t1.second)>(t2.hour,t2.minute,t2.second)

纯函数:不会导致已有对象的修改;

修改器:会导致已有对象的修改。

总的来说,我还是建议你写纯函数,除非用修改器有特别显著的好处。这种模式也叫做函数式编程。

ef add_time(t1, t2):
    assert valid_time(t1) and valid_time(t2)
    seconds = time_to_int(t1) + time_to_int(t2)
    return int_to_time(seconds)

assert 语句是很有用的,可以用来区分条件语句的用途,将 assert 这种用于检查错误的语句与常规的条件语句在代码上进行区分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值