Python导入模块:import与from import的区别

0 下载量 148 浏览量 更新于2024-08-30 收藏 240KB PDF 举报
"这篇资源主要探讨了Python编程中的导入模块机制,函数定义,以及os库中与文件操作相关的两个函数——os.path.exists()和os.makedirs()。" 在Python编程中,模块导入是基础操作,主要分为`import`和`from ... import`两种方式。 1. `import`语句用于引入整个模块,例如`import datetime`,这会将datetime模块导入到当前命名空间中。使用这种方式,当你需要使用模块中的特定类或函数时,需要通过模块名来引用,如`datetime.datetime.now()`。这是因为datetime模块包含了多个类,如datetime、date和time等,所以需要明确指定要使用的类。 2. `from ... import`语句则允许你直接导入模块中的某个特定部分,例如`from datetime import datetime`,这样就可以直接使用`datetime.now()`,无需再通过模块名进行调用。这种方式更加简洁,但可能导致命名冲突,如果导入的名称与当前命名空间中的其他名称相同。 2. 定义函数是Python中创建可重用代码的基本方法。在Python类中,`__init__`是一个特殊方法,也称为构造器,用于初始化新创建的对象。当一个类实例化时,`__init__`会被自动调用。通常,第一个参数`self`指向实例本身,它不是必须的,但是一种约定,用来引用类的实例。 3. `os.path.exists()`是Python os库中的一个函数,用于检查给定的路径是否存在。例如,`os.path.exists('user.py')`会返回True如果'user.py'文件存在于当前工作目录。这个函数在处理文件和目录时非常有用,可以作为条件语句的一部分,来决定是否执行后续操作。 4. `os.makedirs()`和`os.mkdir()`都用于创建目录。`os.mkdir()`只创建单级目录,而`os.makedirs()`可以递归地创建多层目录。`os.makedirs()`接受一个额外的参数`exist_ok`,默认为False,表示如果目标目录已经存在,程序会抛出异常。如果设置为True,就不会因目录已存在而引发错误,这对于避免因重复创建目录而导致的问题很有帮助。 这些知识点对于理解和编写Python程序至关重要,特别是在处理文件系统操作和组织代码结构时。熟悉这些基本概念有助于提升代码的可读性和效率。