>  Q&A  >  본문

python - 一py文件中的中关于import的疑问?

描述问题

地址见: autojump-中的import (第86-90行)

摘录部分如下(line: 86-90)

import copy as _copy
import os as _os
import re as _re
import sys as _sys
import textwrap as _textwrap

from gettext import gettext as _

为什么要将系统包重命名那样,不是多此一举么?

我的理解, 作为Python开发者,一般来说:

  1. Python官方包也不算多

  2. 浸淫久了,自然耳濡目染耳熟能详,一般不会去重名(虽然理论上会)

  3. 用Python久了,导入哪个官方包,脑袋就会如同肌肉记忆一样

上下文环境

  1. Linux

  2. autojump

高洛峰高洛峰2741일 전925

모든 응답(2)나는 대답할 것이다

  • 天蓬老师

    天蓬老师2017-04-18 09:35:31

    답변은 다음과 같습니다.

    모듈을 다른 모듈에서 _으로 가져오는 이유는 무엇입니까?

    간단한 예로 모듈 a와 b가 있다고 가정해 보겠습니다.

    으아악

    또한 동일한 디렉토리에 있는 b.py 모듈은 다음과 같습니다.

    으아악

    b에서는 os 또는 _os를 사용할 수 없습니다. os가 a.py에 직접 도입되면 b.py에서 os를 사용할 수 있습니다.

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:35:31

    • 일반적으로 보면 사실 좀 불필요한 부분도 있지만, 사용자가 정의한 패키지나 클래스, 함수의 이름이 표준 라이브러리의 이름과 같은 경우도 있지만 개발자들은 일반적으로 이를 기피합니다.

    • 한 가지 가능성은 이 코드를 참조하는 파일에서 이 코드 가져오기의 내용을 숨기는 것입니다. 예를 들어, main.py가 이 파일을 가져오는 경우 이러한 표준 라이브러리 함수를 main.py에서 직접 호출할 수 없습니다. 예를 들어, copy.copy()는 직접 사용할 수 없으며 그렇게 해야 할 수도 있습니다.

    회신하다
    0
  • 취소회신하다