我有一个向量数组,我想按长度排序:
class Vector:
def __init__(self, x, y):
self.x, self.y = x, y
def __add__(a, b):
return Vector(a.x + b.x, a.y + b.y)
def __str__(a):
return str(a.x) + ' ' + str(a.y) + '\n'
def __key__(self):
return self.x * self.x + self.y * self.y
a = []
a.append(Vector(1,2))
a.append(Vector(1, 1))
a.sort()
print("".join(map(str,a)))
Run Code Online (Sandbox Code Playgroud)
它说:"无法解决的类型:Vector()<Vector()"它要我创建lt
,gt
..方法.但是我想在不使用的情况下排序cmp
.可能吗?
这是一个Python脚本的示例:
n, dollar, euro = map(input().split())
if n == 1:
print(dolar / euro) # Note the typo, 'dolar' vs. 'dollar'
else:
print(euro / dollar)
Run Code Online (Sandbox Code Playgroud)
我犯了一个错误("dolar"与一个'l').error(NameError)
除非您输入,否则口译员不会通知甚至是警告n = 1
.
如何在运行时通知它?