파이썬 네임 스페이스

네임 스페이스

파이썬 실행이 시작되면, 그것은 변수를 발견 할 때마다, 이름과 기록 된 값이지만 함수 정의 직면, 통역자의 변수 관계를 넣어, 메모리의 공간을 열 것이다 단지 함수 이름은 그 시간 만에로드 기능, 더 아무것도의 시작입니다., 인터프리터에 대해 우려하지 않은 기능은 변수와 함수의 내부 논리로 존재 함을 나타내는 메모리로 읽어되고, 함수가 호출되는 경우에만 방문 시간은 인터프리터가 함수 내에서 선언 된 변수에 따라 내부 변수 공간을 엽니 다. 함수가 완료와 함께, 차지하는 공간의 함수로 내부 변수의 기능이 완성 된 비워됩니다.

def fun():   
    a = 10   
    print(a)
fun()
print(a)    # a不存在了已经..

우리는 이름과 저장 공간과 가치 사이의 관계의 이름을 : 네임 스페이스 우리가이 공간에 저장되어있는 메모리의 변수입니다.

네임 스페이스 카테고리 :

  1. 글로벌 네임 스페이스 -> 우리는 직접 문서에 함수 외부에 선언 된 변수는 전역 네임 스페이스에 속하는 평

  2. 현지 네임 스페이스 -> 함수에 선언 된 변수는 로컬 네임 스페이스에 보관됩니다

  3. 내장 네임 스페이스 -> 저장 파이썬 인터프리터는이 있습니다 내장 된 네임 스페이스를 INT, 이름,리스트, 튜플, str을 우리에게 제공  

로드 순서 :

  1. 내장 네임 스페이스
  2. 글로벌 네임 스페이스

  3. 로컬 공간 (기능 실행시)

순서의 값 :

  1. 현지 네임 스페이스

  2. 글로벌 네임 스페이스

  3. 내장 네임 스페이스

a = 10
def func():  
    a = 20   
    print(a)

func()  # 20

범위 : 범위 전역 및 로컬 범위 내로 볼의 범위의 발효에 따른 범위 인

   글로벌 범위 : 어디서나 파일 전체에서 사용할 수있는 내장 네임 스페이스와 글로벌 네임 스페이스 (⾏ 실행에 의해 위에서 아래로 따라)가 포함되어 있습니다.

   로컬 범위 : 내부 함수가 사용될 수있다.

도메인 네임 스페이스를위한 사용 :

  1. 글로벌 범위 : 글로벌 네임 스페이스 + 내장 네임 스페이스
  2. 로컬 범위 : 지역 공간

우리는 ()가 지역 주민에 의해 도메인 정보와 지역 변수 양의 사용과 기능으로 볼 수있다, 도메인 콘텐츠를 사용하기 위해 () 함수 글로벌 전역에서 볼 수 있습니다

a = 10
def func():   
    a = 40   
    b = 20   
    print("哈哈")   
    print(a, b)        
    print(globals())    # 打印全局作用域中的内容   
    print(locals())     # 打印当前作用域中的内容
func()

IMG

  • 네임 스페이스 카테고리

    命名空间分类:
    1. 全局命名空间--> 我们直接在py文件中, 函数外声明的变量都属于全局命名空间
    2. 局部命名空间--> 在函数中声明的变量会放在局部命名空间
    3. 内置命名空间--> 存放python解释器为我们提供的名字, list, tuple, str, int这些都是内置命名空间 
  • 로드 순서

    #内置空间>全局空间>局部空间
  • 주문 금액

    #局部空间>全局空间>内置空间
  • 범위

    #全局作用域:
      内置空间+全局空间
    #局部作用域
      局部空间

추천

출처www.cnblogs.com/luckinlee/p/11620074.html