python函数中的default怎么理解

以下这段代码的default怎么理解,是有个参数为default吗?那么这个default有什么用途呢?我是从c#转来学python的,看到这个函数觉得很奇怪,觉得default是多余的。(代码是从开源程序中copy来的)defpretty_date(dt,default=None):
"""
Returnsstringrepresenting"timesince"e.g.
3daysago,5hoursagoetc.
"""
ifdefaultisNone:
default='justnow'
now=datetime.utcnow()
diff=now-dt
periods=(
(diff.days/365,'year','years'),
(diff.days/30,'month','months'),
(diff.days/7,'week','weeks'),
(diff.days,'day','days'),
(diff.seconds/3600,'hour','hours'),
(diff.seconds/60,'minute','minutes'),
(diff.seconds,'second','seconds'),
)
forperiod,singular,pluralinperiods:
ifnotperiod:
continue
ifperiod==1:
returnu'%d%sago'%(period,singular)
else:
returnu'%d%sago'%(period,plural)
returndefault
富国沪深
浏览 2820回答 2
2回答

汪汪一只猫

default是你传递进去的函数参数。是一个带有默认值的参数,也就是在调用这个函数的时候可以不用给它赋值。

小唯快跑啊

不知道提问者有没有Linux命令行经验date命令,不加参数时,默认使用当前时间。如果有date--date="yesterday"则使用昨天的时间。或者参考SQL的表结构定义时CREATETABLEcustomer(First_Namechar(50),Last_Namechar(50),Addresschar(50)default'Unknown',Citychar(50)default'Mumbai',Countrychar(25),Birth_Datedate)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript