python入门20 导入模块(引包)
Posted dinghanhua
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python入门20 导入模块(引包)相关的知识,希望对你有一定的参考价值。
1 引包: import module 或 import module.module1 或 from module import module1,module2...等
2 import xx 导入xx模块,创建变量xx指向该模块,通过变量xx可访问模块内的所有功能
3 import xx.yy 与 from xx import yy 使用方式的差别:前者如果使用yy下的fun()需写成xx.yy.fun(), 后者只写yy.fun()即可。
4 python包:目录下带有__init__.py文件的才是包
#coding:utf-8 #/usr/bin/python """ 2018-11-18 dinghanhua 引包 """ """ import xx 导入xx模块,就是变量xx指向该模块,通过变量xx可访问模块内的所有功能""" import os import requests as req #别名 response = req.get(\'https://www.baidu.com\')
"""from xx import yy""" from selenium import webdriver dr = webdriver.Firefox()
"""import xx.yy""" import selenium.webdriver dr = selenium.webdriver.Firefox()
"""from xx.yy import zz""" from selenium.webdriver import Firefox,Chrome #引入多个包 dr = Firefox()
"""from xxx import * 不一定引入全部,只有作者在__all__里面写了的模块才会导入""" """引入自定义包,同一个目录下module 直接引入import module""" """引入自定义包,不同目录,引入import 目录.子包,或from 目录 import 子包"""
\'\'\'__main__里面的代码只在当前脚本单独执行时执行,被引用时不执行\'\'\' if __name__ == \'__main__\': print(\'调试下当前程序\') #被引用时不执行
实践: 新建包module1,包下面有py1.py
py1.py的内容:
class py2: def func(self): print(\'func is function\') print(\'不在main内部的\') if __name__ == \'__main__\': print(\'调试下当前程序\')
1 直接在py1.py执行,会执行main部分的程序
2 在其他程序中引入module1,不会执行py1.py main里面的程序
或
特别注意: 自定义包名 避免与系统自带及第三方包重名
""" 自定义包名避免与已有的包重名 查找顺序:当前目录下查找 》sys.path 》环境变量里找pythonpath 》built-in 》site-packages 找到即停止""" #当前目录新建文件datetime.py import datetime print(datetime.time()) #报错 AttributeError: module \'datetime\' has no attribute \'date\'
the end!
以上是关于python入门20 导入模块(引包)的主要内容,如果未能解决你的问题,请参考以下文章