热线电话:13121318867

登录
2018-12-20 阅读量: 686
python编程里的多态是什么概念

术语多态(polymorphism)源自希腊语,意思是“有多种形态”。这大致意味着即便你不知

道变量指向的是哪种对象,也能够对其执行操作,且操作的行为将随对象所属的类型(类)而异。

例如,假设你要为一个销售食品的电子商务网站创建在线支付系统,程序将接收来自系统另一部

分(或之后设计的类似系统)的购物车。因此你只需计算总价并从信用卡扣除费用即可。

你首先想到的可能是,指定程序收到商品时必须如何表示。例如,你可能要求用元组表示收

到的商品,如下所示:

('SPAM', 2.50)

如果你只需要描述性标签和价格,这样的表示很好,但不太灵活。假设该网站新增了拍卖服

务,即不断降低商品的价格,直到有人购买为止。在这种情况下,如果能够允许用户像下面这样

做就好了:将商品放入购物车并进入结算页面(你所开发系统的一部分),等到价格合适时再单

击“支付”按钮。

然而,使用简单的元组表示商品无法做到这一点。要做到这一点,表示商品的对象必须在你

编写的代码询问价格时通过网络检查其当前价格,也就是说不能像在元组中那样固定价格。要解

决这个问题,可创建一个函数。

# 不要像下面这样做:

def get_price(object):

if isinstance(object, tuple):

return object[1]

else:

return magic_network_method(object)

0.0000
2
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子