3 ms·
This is valid Python: >>> class Foo: ... def __init__(Foo, x): ... Foo.x = x ... >>> foo = Foo(5) >>> foo.x 5 The varia
by imauld 8y ago
This is valid Python:
>>> class Foo:
... def __init__(Foo, x):
... Foo.x = x
...
>>> foo = Foo(5)
>>> foo.x
5
The variable name `self` is a convention as is `cls`. You can name the first argument to a method whatever you please. The same is true for method receivers in Go:
type Foo struct {
X int
}
func (Foo Foo) Bar() int {
return Foo.X * 2
}
That will compile and perform as expected. Not sure about Java/C# but in Javascript you can bind `this` to another variable if you'd like:
var Foo = {
x: 5,
foo: function() {
Foo = this
return Foo.x * 2;
}
}