変数は定義される位置によって, スコープと呼ばれる有効範囲が異なります. 関数は独自のスコープを作り, 関数内部で定義される変数を関数の外側で使うことはできないようになっています.
次の振る舞いを確認してください.
In [1]: y = 'hello' In [2]: z = 100 In [3]: def f(x): ...: y = 2 ...: z = -1 ...: return x*2 + z ...: In [4]: f(1) Out[4]: 1 In [5]: y