A instrução global em Python

Suponha que temos uma variável global externa i. Também há uma função func que adiciona um a essa variável:

pythoni = 0
def func():
  i += 1 # retornará um erro
  return i

Após a execução do código, retornará um erro, porque há um conflito entre a variável global i, declarada no código externo, e a variável local i, à qual é adicionado 1, mas a própria variável ainda não foi declarada. Para corrigir este problema e fazer a função trabalhar especificamente com a variável global, é necessário usar a instrução global. Esta instrução representa uma declaração que é executada para todo o bloco de código atual no qual está definida.

Vamos reescrever o exemplo anterior, declarando no corpo da função global:

pythondef func():
  global i
  i += 1
  return i
  
print(func()) # retornará 1
Задание 1

No código a seguir, um programador cometeu um erro:

pythonnum = 4

def func():
  num *= 2
  return num

print(func())

O que há de errado com este código? Encontre e corrija o erro do autor do código.

Задание 2

No código a seguir, um programador cometeu um erro:

pythonnum = 10

def func():
  num -= 3
  return i

print(func())

O que há de errado com este código? Encontre e corrija o erro do autor do código.