day8:Python 函数篇函数参数类型学习使用(模块和包管理)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_43264177/article/details/102759778

一、模块和包管理
1.模块和包的定义
(1)模块(Moudle):模块是一个Python文件 ,以.py 结尾,包含了Python对象定义和Python语句。
(2)包(Package):Python中的包就是一个包含一个__init__.py文件的目录(文件夹)。
2.模块的作用
(1)模块让你能够有逻辑地组织你的Python代码段
(2)把相关的功能代码写到一个模块里能让你的代码更好用,更易懂。
(3)模块能定义函数,类和变量,模块里也能够包含可执行的代码。
在这里插入图片描述
3.模块导入模式:
在这里插入图片描述

import *
import.. as..
from...import...
from...import *
from...import...as

注意点:除了顶级目录,一层一层的剥开你的心

import sys
print(sys.path)	# 返回的是一个列表
# @time:2019/10/26 18:44
# @Author:coco
# @File:test01.py
# @software:PyCharm

import random

a = 100

num = random.random()
print(num)


def work():
    print('test01中的work函数')

# 魔法变量:__name__:
print('__name__的值:  ',__name__)
# 在模块导入的时候不希望执行部分内容
if __name__ == "__main__":
    num = random.random()
    print(num)

运行结果:
在这里插入图片描述

# @time:2019/10/26 19:39
# @Author:coco
# @File:test02.py
# @software:PyCharm

""""
为什么代码中会有浅色的波浪线和红色的波浪线
浅色的波浪线:pycharm监测到你的这行代码不符合pop8规范(官方给出的编码规范)
红色的波浪线:pycharm监测到这行代码语法有问题或者变量找不到(没有被定义)
"""
# 方式一:导入整个模块
# import test01
#
# print(test01.a)
# test01.work()

from test01 import a  # 导入时会把test01中的模块从上到下执行

print(a)

# 方式二:导入模块中的部分内容
from test01 import work  # 这个波浪线并不是代码写错了,只是pycharm识别不出我们自定义的这个模块

work()

# 扩展
# 通过as给导入进来的方法或变量,重新起名字(别名)
from test01 import work as w1

w1()


def work():
    print('test02中的work')


work()
w1()

import test01 as t1

print(t1.a)
t1.work()

# 导入多个内容
from test01 import a, work, num

print(a)
print(num)

# 导入模块中所有的内容(不推荐使用)
from test01 import *
print(a)
print(num)
work()

运行结果:
在这里插入图片描述

# @time:2019/10/26 20:11
# @Author:coco
# @File:test03.py
# @software:PyCharm

# 包导入

# 方式一
# from 包名 import 模块名
from pack01 import module1

module1.m_func1()
print(module1.aa)
print(module1.bb)

# 方式二:
#  from 包名.模块名 import 模块中的变量或方法
from pack01.module1 import aa, bb

print(aa)
print(bb)

# 剥洋葱
# from pack01.ppp import p_m1
# from pack01.ppp.p_m1 import 变量或方法

运行结果:
在这里插入图片描述
4.模块导入的搜索路径

# @time:2019/10/26 20:30
# @Author:coco
# @File:p_m1.py
# @software:PyCharm

import sys

print(sys.path)

for i in sys.path:
    print(i)

from py23_07day import zy_06day

# 这些路径是我们在导入包的时候,python解释器在搜索我们导入的包
# 从上往下搜索
# 检测不到第一条,第一条是我们运行文件所在的路径
"""
C:\Python37\python.exe D:/Python_test/py23_class/py23_08day/test011/p_m1.py
['D:\\Python_test\\py23_class\\py23_08day\\test011', 'D:\\Python_test\\py23_class', 'C:\\Python37\\python37.zip', 'C:\\Python37\\DLLs', 'C:\\Python37\\lib', 'C:\\Python37', 'C:\\Python37\\lib\\site-packages']
D:\Python_test\py23_class\py23_08day\test011
D:\Python_test\py23_class
C:\Python37\python37.zip
C:\Python37\DLLs
C:\Python37\lib
C:\Python37
C:\Python37\lib\site-packages
"""

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43264177/article/details/102759778