고급 기능
1, 네임 스페이스 - 삼가지
# 내장 네임 스페이스 - 파이썬 인터프리터
# 당신이 내장 된 네임 스페이스를 사용하기 시작할 수있는 이름을 저장하기 위해 파이썬 인터프리터가
# 내장 이름은 부팅 시간 인터프리터에서 메모리에로드 할
# 글로벌 네임 스페이스 - 우리는 코드를 작성하지만, 코드의 함수가 아니다
#는 메모리에로드 차례로 위에서 아래로 프로그램 실행 중입니다
# 경우 모든 변수와 함수 이름 우리가 설정을 넣어
# 지역 공간 - 기능
# 함수 정의의 내부 이름입니다
# 호출 기능이 네임 스페이스에 의해 수행되는 기능의 종료로 이름 공간을 생성 할 때 다시 사라질
# 로컬 : 당신은 글로벌 내장 된 네임 스페이스 이름을 사용할 수 있습니다
세계에서 # : 당신은 내장 된 네임 스페이스 이름을 사용할 수 있지만, 국소에서 사용할 수 없습니다
# 내장 : 당신은 로컬 및 글로벌의 이름을 사용할 수 없습니다
DEF 최대 (L) : 인쇄 ( ' FUNC 맥스 ' ) 인쇄 (최대 ([1,2,3])) # 최대 FUNC의에서 # 정상적인 상황에서의 직접 사용 내장 된 이름 # 우리가 세계를 정의하는 경우 같은 이름의 내장 이름 네임 스페이스는 전역 이름 사용할 때 #을 나 자신 때때로 나는 내 상사를 찾을 수없는 경우 # 그는 부모가 발견되지 않은 경우 더 높은 수준에있을 그것을 발견하지 않은 경우 내장 된 네임 스페이스 오류에없는 # 서로 공유하지 않는 여러 기능을보다 독립적 인 지역 이름 공간이 있어야합니다
2. 범위 - 이가지
# 글로벌 범위 - 전체 그림 -와) (글로벌 네임 스페이스 이름이 글로벌 범위 --globals의 일부 내장
# 로컬 범위 - 로컬 역할 - 기능 (이름 로컬 이름 공간 지역 범위에 속하는) --locals ()
# 글로벌 범위 전역 A. 1 = DEF FUNC () : 글로벌 = 2 FUNC () 전단 (A) # 2 # 불변 데이터 타입이지만 전역 로컬 변수의 관점에서 # 하지만 직접 수정할 수 #을 한다면 수정할, 당신은 프로그램의 시작 부분에 글로벌 문을 추가해야합니다 # 다음 변수는 글로벌 변수는 모든 로컬 작업에 유효 할 것이다 로컬 (기능)에서 전역 변수를 선언하면
# 주민 소개 지역 변수를 참조 을 = 1. B = 2 DEF FUNC () : X = ' AAA ' Y = ' BBB ' 인쇄 (지역 주민에 대해 ()) #이 지역 변수보기 FUNC () 인쇄 (지역 주민 ()에 대해) #의 디스플레이 세계를 인쇄 (전역은 ()) #은 글로벌보기 #의 글로벌의 이름을 인쇄 항상 전역을 #의 어떤 위치 어디 지역 주민에 따라 지역 주민의 출력을
3 중첩 함수
DEF의 최대 (A, B) : 리턴 IF B A>를 사람의 B의 DEF의 (X, Y, Z)가 the_max # 중첩 함수 호출 C = (X, Y) 최대 복귀 맥스 (C, Z) 이 전단 (the_max (1,2,3))
3.1, 로컬이 아닌 사용
= 1. DEF 겉감 () . = 1 DEF 내부 () = 2 DEF Inner2 () : 로컬이 아닌 경우 → #은 상기 제 1 층의 로컬 변수 선언 . A = 1 + # 수정 불가능한 데이터 형식 Inner2 () 인쇄 ( ' ## ## A : ' , a) # . 3 (함수 A = 2, 결과는 2의 경우 이너 제거) 내측 () 전단 ( ' : ** ' , a) # 제거한 경우 1 (내측이. 함수 A = 2, 결과 2) 인 겉감 () 인쇄 ( " 글로벌 : ', A) # . 1 (내부 함수 A = 2는, 그 결과 인 경우 제거 하였다. 1) # 비 로컬 로컬 변수 만 가까운 로컬 변수 층의 상층에서 현재 함수를 찾아 내기 #는 것 비 로컬 변경의 함수 내부 변수를 선언을 최근의 현재 수준에서 지역 변수의 기능에 영향을주는 # 글로벌 무효 #을 가장 최근에 부분적으로 만 영향에
도 4는, 기능 이름이 할당 될 수있다
DEF FUNC () 전단 (123 ) FUNC () #의 함수 이름은 메모리의 어드레스 # 123 FUNC2 = FUNC #의 기능 명을 할당 할 수 FUNC2 () # 123
DEF FUNC () 전단 (123 ) DEF Wahaha (F) : #의 F () 반환 F #에 있을 수있는 함수의 리턴 값 함수 이름 qqxing = Wahaha (FUNC) #의 이름 파라미터로서들 수있다 qqxing ()
(5) 고정 : 중첩 함수 내부 변수 함수는 외부 함수를 호출
DEF 외측 () = 1 DEF 내측 () : 인쇄 (a) 리턴 내측 인 = 외측 () 인 ()