python 의 import 구문 용법

4189 단어 pythonimport문장
import 문 구 는 무슨 소 용이 있 습 니까?import 문 구 는 다른 python 파일(모듈 module 라 고 함)을 가 져 오고 이 모듈 에서 정의 하 는 클래스,방법 또는 변 수 를 사용 하여 코드 재 활용 의 목적 을 달성 합 니 다.
import 구문 공식 문서https://docs.python.org/zh-cn/3/reference/simple_stmts.html#the-import-statement
잘 모 르 겠 어 요.읽 어 보 세 요.
형식 1:
import 모듈 명 1[as 별명 1],모듈 명 2[as 별명 2],...
설명:1)전체 모듈 가 져 오기;2)[as 별명]부분 은 없 을 수 있 으 며,별명 을 지어 간단하게 인용 할 수 있다.3)모듈 에 있 는 구성원 을 가 져 오 는 형식 을 사용 합 니 다:모듈 명[또는 별명].구성원
구성원 은 속성(변수)이나 함 수 를 포함한다.
형식 2:
from 모듈 명 import 멤버 명 1[as 별명 1],멤버 명 2[as 별명 2],...
설명:1)모듈 의 한 구성원 가 져 오기;2)from 모듈 이름 import 와 같은 모든 구성원 을*로 대표 할 수 있 습 니 다*
가방 에 있 는 모듈 을 가 져 오 면 위 문법 에 있 는 모듈 이름 을 가방 이름 으로 바 꿉 니 다.모듈 이름
알림:import xxx 와 from xxx import yy,이들 의 차 이 는:
import xxx,xxx.yyy 방식 으로 가 져 오기 모듈 의 변수,함수,클래스 등 을 사용 해 야 합 니 다.
from xxx import yy,직접 yy 로 호출 할 수 있 습 니 다.
예컨대

import turtle

turtle.circle(100)
혹시

import turtle as t

t.circle(100)
혹시

from turtle import *

circle(100)
import module_name。즉 import 후 모듈 이름 을 직접 연결 합 니 다.이러한 상황 에서 Python 은 두 곳 에서 이 모듈 을 찾 습 니 다.첫 번 째 는 sys.path(실행 코드 import sys 를 통 해 가능 합 니 다.print(sys.path)는 위 치 를 봅 니 다.os 이 모듈 이 있 는 디 렉 터 리 는 목록 sys.path 에 있 습 니 다.일반적으로 설 치 된 Python 라 이브 러 리 의 디 렉 터 리 는 sys.path 에서 찾 을 수 있 습 니 다.두 번 째 곳 은 파일 이 있 는 디 렉 터 리 를 실행 하 는 것 입 니 다.
좀 더 깊이 이해 하려 면 몇 가지 기본 개념 을 익 혀 야 한다.
모듈(모듈)
Python 에 서 는 일반적으로.py 를 접미사 로 하 는 파일 이 며,다른 module 로 사용 할 수 있 는 파일 형식 으로 는'pyo','pyc','pyd','pyw','dll'이 있 지만 Python 초보 자 는 거의 사용 되 지 않 습 니 다.그들 은 Python 코드 캐리어 에 속 하 는 최소 단위 입 니 다.이렇게 단독으로 존재 하 는 파일 을 우 리 는 모두'모듈'이 라 고 부 릅 니 다.
module 는 함수,클래스,변 수 를 정의 할 수 있 고 실행 가능 한 코드 도 포함 할 수 있 습 니 다.module 원본 은 3 가지 가 있 습 니 다:
① Python 에 내 장 된 모듈(표준 라 이브 러 리);
② 제3자 모듈;
③ 사용자 정의 모듈.
패키지
모듈 이름 충돌 을 피하 기 위해 파 이 썬 은 디 렉 터 리 에 따라 모듈 을 구성 하 는 방법 을 도입 하여 패키지(package)라 고 부른다.가방 은 여러 모듈 을 포함 하 는 폴 더 입 니 다.
Python 3.3 이전에 패키지 로 가 져 오 려 면 를 포함해 야 합 니 다.init__.py 파일;그리고 Python 3.3 및 이후 버 전에 서init__.py 파일 필요 없어 도 돼 요.
포함init__.py 파일 의 가방,init__.py 파일 은 아무것도 쓰 지 않 고 빈 파일 로 존재 하면 됩 니 다.하나의 태그 에 해당 합 니 다.이 가방 을'레 귤 러 패키지'(일반 가방)라 고 부른다.
Python 3.3 버 전부터'Namespace Packages'(네 임 스페이스 패키지)를 도 입 했 는데 이 가방 은 가 없습니다.init__.py。
절대 가 져 오기 와 상대 가 져 오기
우리 의 프로젝트(Project)의 디 렉 터 리 구 조 를 다음 그림 과 같이 가정 합 니 다.

절대 도입
절대 경 로 는 맨 위 에 있 는 폴 더 부터 모든 가방 이나 모듈 에 완전한 가 져 오기 경 로 를 제공 해 야 합 니 다.예:

from package1 import mudule1

from package1.module2 import Fx

from package2 import Cx

from package2.subpackage1.module5 import Fy
상대 가 져 오기:
상대 적 인 가 져 오기 를 사용 할 때 현재 위치 와 상대 적 으로 자원 이 있 는 위 치 를 가 져 와 야 합 니 다.
상대 가 져 오기 는'암시 적 상대 가 져 오기'와'명시 적 상대 가 져 오기'두 가지 로 나 뉜 다.예 를 들 어 우 리 는 package 2/module 3.py 에서 module 4 모듈 을 참조 하고 싶 으 면 이렇게 쓸 수 있다.

import module4 #       

from . import module4 #       

from package2 import module4 #     
코드 에 있 습 니 다.현재 파일 이 있 는 디 렉 터 리 를 표시 합 니 다.만약..이 디 렉 터 리 의 이전 디 렉 터 리,세 개,네 개 를 표시 합 니 다.순서대로 유추 합 니 다.이 를 통 해 알 수 있 듯 이 암시 적 상대 가 져 오기 보 다 는 명시 적 상대 가 져 오기 가 현재 디 렉 터 리 라 는 조건 을 포함 하고 있 지만 혼란 을 일 으 키 기 쉬 우 므 로 PEP 328 에서 정식 적 으로 도태 되 었 습 니 다.왜냐하면'Explicit is better than implicit'이기 때 문 입 니 다.
package 2/module3.py 에서 class Cx 와 function Fy 를 가 져 오 려 면 이렇게 쓰 십시오.

# package2/module3.py

import Cx #       

from . import Cx #       

from .subpackage1.module5 import Fy
레 퍼 런 스
https://zhuanlan.zhihu.com/p/348559778
https://blog.csdn.net/weixin_38256474/article/details/81228492
python 의 import 구문 용법 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 python import 구문 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기