12. Python - import_1
2021. 2. 23. 17:35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | # Java # 자기가 작업한거 공유하는 문화 # 클래스명 중복이 생길 수 있다. # 클래스명이 중복될 때 구분할 수단 : package # package명은 전세계적으로 중복 되지 않아야한다. # 모든 class는 package에 소속되어 있어야한다. # 패키지명.클래스로 사용 # 같은 패키지 or java.lang 소속 or import 하면 패키지명 생략 가능하다 # Python # 자기가 작업한거 공유하는 문화 # 클래스명 중복이 생길 수 있다. # 클래스명이 중복될 때 구분할 수단 : package # package명 규칙이 없음 -> 난리남 # 클래스를 꼭 package에 넣을 필요도 없음 # 다른 파일을 불러온다면 import는 무조건 해야한다. # Java - package # package(필수) 속에 class(필수) # java.util.Random r - new java.util.Random(); # 같은 패키지 or java.lang 소속 or import 하면 패키지명 생략 가능하다 # import는 패키지명을 생략하고 싶을 때 쓰는 옵션사향 # Python - package # package(필수x) 속에 module 속에 class(필수 x) # 다른 module에 있으면 import는 필수 사항 # 가장 기본 버전 # import animal.pet # import 패키지명.모듈명 # pet.py의 소스가 이 모듈로 들어옴 # c = animal.pet.Cat("후추", 5) # Java의 import와 다르게 Python의 import를 하면 쓸수 있게 됨 # import 후 패키지명.모듈명.클래스명()으로 불러와야함 # 2번째 버전 # import animal.pet as ap # import 패키지명.모듈명 as 별명 # c = ap.Cat("후추", 5) # 별명.클래스명() # c.printInfo() # 우리가 자주 쓸 버젼 from animal.pet import Cat # from 패키지명.모듈명 import 가져올 클래스명 c = Cat("후추", 5) c.printInfo() ## 만능은 아님 ## 클래스 명의 중복이 일어날 경우 가까운 클래스로 이어진다. ## 그럴땐 import animal.pet as ap으로 사용해서 두 클래스를 구분해 줘야한다. from animal.pet import Dog as dd # from 패키지명.모듈명 import 클래스명 as 별명 # 이렇게 사용 가능하기는 함 ## Python은 인터프리터 방식의 언어 ## Python의 import는 소스가 그대로 들어가는 의미 ## 두개의 모듈에서 서로 import가 걸리면 무한 루프가 돌면서 에러가 터져버림 | cs |
'Python' 카테고리의 다른 글
14. Python - 상속, overriding (0) | 2021.02.23 |
---|---|
13. Python - import2, if __name__ == "__main__": (0) | 2021.02.23 |
11. Python - 생성자, 소멸자 (0) | 2021.02.23 |
10. Python - OOP (객체지향) (0) | 2021.02.23 |
9. Python - 가위바위보 게임 (0) | 2021.02.23 |