Python novice's calculator
Pythons magic methods are there to make your life easier, not harder. They allow custom classes to use built-in functionality. They are not there so you have to use long names with built-in types. 

The __contains__ method is called under the hood whenever you use the in keyword. 

In addition, you do the same thing for all four operations: See if it is present, split by the operator and apply it. This can be simplified using a loop over a dictionary, mapping the string of the operator to the operator itself (using the operator module which gives you functions for most operations).

And so your code can be simplified to:

import operator

OPERATIONS = {"+": operator.add,
              "-": operator.sub,
              "*": operator.mul,
              "/": operator.div}

while True:
    calculation = input("Calculation: ")
    for name, op in OPERATIONS.items():
        if name in calculation:
            a, b = map(float, calculation.split(name))
            print(op(a, b))


And at that point you should ask yourself how to modify this to allow multiple operations or even grouping expressions with parenthesis.

You should also probably add some error handling (what happens if the user tries to enter multiple operations? What happens if they do not enter a number?).