from os import system
def a(len1,hgt=len1,til,col=0):
system('mode con cols='+len1,'lines='+hgt)
system('title',til)
system('color',col)
a(64,25,"hi","0b")
input()
当我运行它时,它拒绝“def a(...”并以红色突出显示“(”。我不知道为什么。
我在这里澄清两点:
- Firstly non-default argument should not follow the default argument, it means you can't define
(a='b', c)
in function.
The correct order of defining parameter in function are:
- 位置参数或非默认参数,即
(a, b, c)
- 关键字参数或默认参数,即
(a='b', r='j')
- 仅关键字参数,即
(*args)
- var-关键字参数,即
(**kwargs)
def example(a, b, c=None, r="w", d=[], *ae, **ab):
(a,b)
是位置参数
(c=none)
是可选参数
(r="w")
is关键字参数
(d=[])
是列表参数
(*ae)
仅限关键字
(*ab)
是var关键字参数
所以首先重新安排你的参数
- 现在第二件事是当你做 hgt=len1 时你必须定义 len1
保存默认值时未定义 len1 参数,Python 在定义函数时计算并保存默认值
len1 未定义,发生这种情况时不存在(仅在函数执行时存在)
所以第二次删除这个"len1 = hgt"
python 中不允许这样做。
请记住参数和参数之间的区别。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)