You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
But, I encountered a Transcrypted code modifying the argument x in sorted(x):
print('cups.x= ', [c.mesh.position.x for c in cups])
cupClosest= sorted(cups, key=lambda cup: cup.mesh.position.subtract(posLocal).length())[0]
print('cups.x(after sorted())= ', [c.mesh.position.x for c in cups])
The sorted() method call the copy() method
And the copy() method contains :
export function copy (anObject) {
if (anObject == null || typeof anObject == "object") {
return anObject;
} else {
var result = {};
for (var attrib in obj) {
if (anObject.hasOwnProperty (attrib)) {
result [attrib] = anObject [attrib];
}
}
return result;
}
}
It's bugged
If it's an object (an array in your case) it return the object. So useless for a copy method.
Otherwise an error occur because "obj" is not know in the loop
The copy method must be something like :
export function copy (anObject) {
if (anObject == null || typeof anObject != "object") {
return anObject;
}
else {
if (anObject instanceof Array){
var res = []
for(var elem of anObject){
res.push(elem)
}
return res
}else{
var result = {};
for (var attrib in anObject) {
if (anObject.hasOwnProperty (attrib)) {
result [attrib] = anObject [attrib];
}
}
return result;
}
}
}
x.sort() modifies x, but sorted(x) doesn't modify the argument x in Python as following:
But, I encountered a Transcrypted code modifying the argument x in sorted(x):
result:
Based on the example above, it looks like sorted(x) modifies x as x.sort() in Transcrypt. It is not true in Python.
The text was updated successfully, but these errors were encountered: