What __init__ and self do in Python?

In this code: … the self variable represents the instance of the object itself. Most object-oriented languages pass this as a hidden parameter to the methods defined on an object; Python does not. You have to declare it explicitly. When you create an instance of the A class and call its methods, it will be passed automatically, as in … Read more

Accessing the index in ‘for’ loops?

Using an additional state variable, such as an index variable (which you would normally use in languages such as C or PHP), is considered non-pythonic. The better option is to use the built-in function enumerate(), available in both Python 2 and 3:

When should I use uuid.uuid1() vs. uuid.uuid4() in python?

uuid1() is guaranteed to not produce any collisions (under the assumption you do not create too many of them at the same time). I wouldn’t use it if it’s important that there’s no connection between the uuid and the computer, as the mac address gets used to make it unique across computers. You can create duplicates by creating … Read more

Python division

You’re using Python 2.x, where integer divisions will truncate instead of becoming a floating point number. You should make one of them a float: or from __future__ import division, which the forces / to adopt Python 3.x’s behavior that always returns a float.

TypeError: ‘int’ object is not callable

Somewhere else in your code you have something that looks like this: Then when you write that is interpreted as meaning a function call on the object bound to round, which is an int. And that fails. The problem is whatever code binds an int to the name round. Find that and remove it.