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()
Run Code Online (Sandbox Code Playgroud)
当我运行它时,它拒绝"def a(..."并突出显示"("红色.我不知道为什么.
Aad*_*Ura 36
我在这里澄清两点:
def example(a, b, c=None, r="w" , d=[], *ae, **ab):
(a,b)是位置参数
(c =无)是可选参数
(r ="w")是关键字参数
(d = [])是列表参数
(*e)仅限关键字
(*opts)是var-keyword参数
所以首先重新安排你的参数
所以第二次删除这个"len1 = hgt"在python中不允许.
记住参数和参数之间的区别,你可以在这里阅读更多:python中的参数和参数
fal*_*tru 10
如错误消息所示,非默认参数til不应遵循默认参数hgt.
更改参数顺序(函数调用也相应调整)或制作hgt非默认参数将解决您的问题.
def a(len1, hgt=len1, til, col=0):
Run Code Online (Sandbox Code Playgroud)
- >
def a(len1, hgt, til, col=0):
Run Code Online (Sandbox Code Playgroud)
UPDATE
SyntaxError隐藏的另一个问题.
os.system 只接受一个字符串参数.
def a(len1, hgt, til, col=0):
system('mode con cols=%s lines=%s' % (len1, hgt))
system('title %s' % til)
system('color %s' % col)
Run Code Online (Sandbox Code Playgroud)
关键字参数后面不能有非关键字参数.
确保重新排列函数参数,如下所示:
def a(len1,til,hgt=len1,col=0):
system('mode con cols='+len1,'lines='+hgt)
system('title',til)
system('color',col)
a(64,"hi",25,"0b")
Run Code Online (Sandbox Code Playgroud)