oop - What do __init__ and self do in Python? - Stack Overflow Python doesn't force you on using " self " You can give it any name you want But remember the first argument in a method definition is a reference to the object Python adds the self argument to the list for you; you do not need to include it when you call the methods if you didn't provide self in init method then you will get an error