zoukankan      html  css  js  c++  java
  • 16 Python学习之模块

    模块

    模块的定义:一个py文件就是一个模块,是封装语句的最小单位

    模块被另一个模块导入时,其中的可执行语句(print、定格的for循环等)会立即执行

    例1:

    模块 model_file.py 的内容

    a = 1
    print('a=', a)
    
    for i in range(5):
        print(i)
        
    def func():
        print('function in model_file.py')
    

    模块 test_file.py 的内容

    import model_file				# 右键运行
    

    运行结果:

    a= 1
    0
    1
    2
    3
    4

    func函数不是可执行语句,所以没有输出,如果加了func(),就会输出

    模块的特殊方法

    详见特殊方法详解

    模块的运行方式

    • 脚本方式:直接在终端用 python 模块名.py 的方式运行,或者在 pycharm中右键运行
    • 模块方式:被其他模块导入,为导入它的模块提供资源(变量,函数,类等)

    模块的导入方式

    • 如果之前成功导入过某个模块,直接使用已经存在的模块

    • 内置模块的路径:

      Windows:安装目录的 Lib 目录中都是系统内置的模块,在 site-packages 中都是下载的第三方的模块

      Linux:/usr/lib64/python3.6

    方式一:import

    导入一个模块的所有成员,如果要一次性导入多个,用逗号分隔

    语法:

    导入一个:import 模块名

    导入多个:import 模块名1, 模块名2, 模块名3, 模块名n

    注意:

    可以在模块名后使用 as 给导入的模块名取一个别名

    例1:

    import os, sys
    import time as t, os as o
    

    方式二:from import

    从模块中导入指定的成员,如果要导入多个成员,用逗号分隔,如果要导入全部成员,用星号(*)

    语法:

    导入一个成员:from 模块名 import 成员

    导入多个成员:from 模块名 import 成员1, 成员2, 成员3, 成员n

    导入全部成员:from 模块名 import *

    注意:

    可以在成员名后使用 as 给导入的成员取一个别名

    例2:

    from time import time
    from time import time as t, tzname as name
    print(t())
    print(name)
    

    1596622197.6038888
    ('CST', 'CST')

    import 和from import的区别

    import导入的方式在调用的时候,需要在使用 模块名.成员名 的方式调用,不容易产生命名冲突

    from import的导入方式可以直接使用,无需使用模块名,容易产生命名冲突,可使用 as 解决

    相对导入

    . 当前目录

    .. 当前目录的父目录

    ... 当前目录父目录的父目录

  • 相关阅读:
    程序员移居国外指南(1)-父母怎么办?
    【广州.NET社区线下活动】云定未来
    TDD/BDD和接口、基类、继承、依赖注入DI
    德国慕尼黑.NET俱乐部VS2019发布活动
    大湾区联动:广州深圳助力东莞.NET俱乐部首次线下活动
    .NET的未来-广州.NET俱乐部学生分会
    Belgrade Azure 2019-2-11活动感悟
    参观微软Serbia开发中心和Office365 2019-01-31活动感悟
    MySQL复制(二)--基于二进制日志文件(binlog)配置复制
    MySQL复制(一)--复制概述
  • 原文地址:https://www.cnblogs.com/zcf-blog/p/13475208.html
Copyright © 2011-2022 走看看