Module (15%)
Section (75%)

Импорт модуля: продолжение

Посмотрите на код в редакторе. Проанализируйте его внимательно:

  • строка 1: выполнить выборочный импорт;
  • строка 3: использовать импортированные объекты и получить ожидаемый результат (1.0);
  • строки с 5 по 12: переопределить значение pi и sin - по сути, они заменяют оригинальные (импортированные) определения в пространстве имен кода;
  • строка 15: получить значение 0.99999999, что подтверждает наши выводы.
 

Давайте сделаем еще один тест. Посмотрите на код ниже:

pi = 3.14 def sin(x): if 2 * x == pi: return 0.99999999 else: return None print(sin(pi / 2)) from math import sin, pi print(sin(pi / 2))

Здесь мы изменили последовательность операций в коде:

  • строки с 1 по 8: определить наши собственные pi и sin;
  • строка 9: использовать их (на экране появится 0.99999999);
  • строка 12: выполнить импорт - импортированные символы заменяют их предыдущие определения в пространстве имен;
  • строка 14: получить 1.0 в результате.


Code

from math import sin, pi

print(sin(pi / 2))

pi = 3.14


def sin(x):
if 2 * x == pi:
return 0.99999999
else:
return None


print(sin(pi / 2))
{{ dockerServerErrorMsg }} ×
{{ errorMsg }} ×
{{ successMsg }} ×