我遇到的问题包括:
SyntaxError
invalid syntax (prog1.py, line 114)
当我尝试使用 str 方法返回已经编码的矩形的坐标,长度,宽度和颜色时,我遇到了这种错误。
def __str__ (self):
return ("starting point:""("self.x,self.y")""\n""width:"self.w"\n""lenght:"self.h"\n""color("self.r,self.g,self.b")")
我应该去哪里
'starting point:(100,20)\nwidht:400\nlenght:120\ncolor(100,255,0)'
答案 0 :(得分:2)
字符串(和其他类型)的串联不像Python中那样工作
你可以做starting_point:("+str(self.x)+","+str(self.y) ...
但这会很麻烦。
您需要str.format
,{}
个占位符和您的数据作为format
方法的参数,如下所示:
return ("starting point:({},{})\nwidth:{}\nlength:{}\ncolor({},{},{})".format(self.x,self.y,self.w,self.h,self.r,self.g,self.b))