42 key = easygui.buttonbox(msg="Enter your message. Your current message is", msg,
choices=["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K",
"L", "M", "N", "O", "P", "Q", "R", "S", "T", "U",
"V", "W", "X", "Y", "Z", "Space", ".", "I'm Done"])
您的计划出错:
SyntaxError:关键字arg之后的非关键字arg (C:/Python25/Cipher.py,第42行)
我认为大胆的部分是错误的,但我不知道如何解决它。
答案 0 :(得分:2)
这与描述here的问题相同。通过更改参数的排列来修复它。
答案 1 :(得分:2)
如果此文档仍然是最新的,那么msg
的{{1}}变量可能会导致您的问题
http://easygui.sourceforge.net/tutorial/easygui_pydoc.html#-buttonbox
title
应该是:
easygui.buttonbox(msg="Enter your message. Your current message is", msg, choices=["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "Space", ".", "I'm Done"])
或如果easygui.buttonbox(msg="", title=msg, choices=["..."])
不应添加到msg
。
title
如果我没有正确记住Python,除非您更改顺序或跳过先前的参数,否则无需指定easygui.buttonbox(msg="", title="Something", choices=["..."])
。说完variable=
后,您需要在此之后为所有参数说出来。
注意:保留其他所有内容,只需更正title参数即可。我清除了其他参数以使其可读。
答案 2 :(得分:0)
对我来说,问题是我混合了如何将参数发送给函数的语法......
让我们说这是函数声明:
def buttonbox(title="", msg="", choices="")
所有参数都是可选的
但是你混合使用了它:
easygui.buttonbox(title="enter your msg", msg, choices="some choices")
喜欢用
调用函数func(a="",b,c="bla",d,e,f,g="b2") etc ..
所以它应该是argument = value:
easygui.buttonbox(title="enter your msg", msg=msg, choices="some choices")
或者只是价值,价值,价值:
easygui.buttonbox("enter your msg",msg,"some choices")
这就是为我解决的问题......也许其他人会发现它很有用。