python同名不同参方法求助
本帖最后由 花朝朝暮暮开 于 2020-1-11 15:51 编辑from time import sleep
def wait(t, t2, t3):
print(t, t2, t3)
def wait ( ):
print('默认等待10S')
t2 = 10
for f in range ( 100 ) :
sleep ( t2 )
print ( '\r还剩{0}秒'.format (t2-f) , end = '' , flush = True )
print('升级成功')
def wait ( t ):
#等待时间,附带进度条显示
t2 = t / 100
for f in range ( 100 ) :
sleep ( t2 )
print ( '\r还剩{0}秒'.format (t-f) , end = '' , flush = True )
if __name__ == '__main__' :
wait ( 100)
wait ( )
wait ( 100,20,10)
如图,python同名不同参函数;希望一类功能的函数能够一样的名称,工作时依据参数个数来调用对应的方法。
现象:
不论传参个数是多少,总是会调用最后一个函数
问:
有什么办法解决
感谢各位大佬,已解决
之前没想到还有能传入列表,哈哈哈哈。不知道如列表的方法
from time import sleep
def wait ( *t ):
if len(t)==0:
x = 10
print('默认等待10秒')
elif len(t)==1:
x=t
print('请等待%d秒'%x)
else:
print('请重新输入等待时间')
return
for f in range ( x ) :
sleep ( 1 )
print ( '\r还剩{0}秒'.format (x-f) , end = '' , flush = True )
用一个方法就行了,给一个参数并且给初始值 MeJY_澶╂櫞 发表于 2020-1-10 17:42
用一个方法就行了,给一个参数并且给初始值
不行的,参数值时动态传入的,不固定哎 建议传代码,别传图片 用二楼说的用最多的参数并且给定初始值可以为None然后根据参数是否为None来判断执行 python不定长参数 用一个不定长参数就搞定了def test(*args):
nums = len(args)
if nums == 1:
print(args)
if nums == 2:
print(args)
if __name__ == '__main__':
test('23e4', 234) 函数最好不要定义为相同名称 可以设置默认缺省 搞定!!!!!
页:
[1]