python包和模块

1. 模块

1.1 什么是模块

python中一个py文件就是一个模块。

1.2 怎么在一个模块中使用另一个模块的内容

1)前提:被使用的模块的模块名(py文件的文件名)必须符合变量名的要求(是标识符,不是关键字);

2)能被使用的内容:所有的全局变量;

3)怎么用:使用别的模块中的内容前,必须先导入模块。

1.3 导入模块

1)import 模块名 - 导入指定模块;导入后可以通过’模块名.xxx’的方式使用这个模块中所有的全局变量;

import test
print(test.a)
test.func1()
print(test.b)

2)from 模块名 import 变量名1,变量名2,… - 导入指定模块;导入后可以直接使用指定变量;

from test import a,b,func1
print(a)
func1()
print(b)

3)from 模块名 import * - 导入指定模块中的变量;导入后可以直接使用所有变量;

from test import *
print(a)
func1()
print(b)

4)from 模块名 as 新模块名 - 直接导入指定模块并且对模块进行重命名,重命名后需要通过新模块名来代替原模块名使用模块;

import test as ts
print(ts.a)
ts.func1()
print(ts.b)

5)from 模块名 import 变量名1 as 新变量名1,变量名2,变量3 as 新变量名3,…。

from test import a as ta,func1,b
print(ta)
func1()
print(b)

2. 导入原理与阻止导入

2.1 导入模块的原理

不管以什么样的方式导入模块,导入模块的时候系统会自动进入模块执行这个模块中所有的代码。

2.2 阻止导入

1)因为导入模块的时候默认会执行模块中所有的代码,就会导致有写完全没有必要在导入的时候执行的代码被执行。
2)如果希望导入模块的时候某些代码可以不执行,就需要去阻止代码在被导入的时候执行。

3)阻止方法:将不需要被执行的代码放到main对应if条件语句里面。

print(f'download:',__name__)
def download_movie(name):
    print(f'{
     name}开始下载')
    print('下载中')
    print(f'{
     name}结束下载')

# 在这个if语句里面的代码在被别的模块导入的时候不会被执行。  -  直接写main敲回车
if __name__ == '__main__':
    names = ['a','b','c','d']
    for name in names:
        downl
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值