浅谈Python模块导入规范
作者:你要永远相信光z 发布时间:2021-02-03 03:39:37
模块导入的规范
模块是类或函数的集合,用于实现某个功能。模块的导入和Java 中包的导入的概念很相似都使用import语句。在Python中,如果需要在程序中调用标准库或其他第三方库的类时,需要先使用import或from. … import. …语句导入相关的模块。
import语句
使用import语句导入sys模块,并打印相关内容的方法
代码
# 规范导入方式
import sys
print(sys.path)
print(sys.argv)
第⒉行代码使用import语句导入了sys模块,sys模块是处理系统环境的函数的集合。
第3行代码输出Python 环境下的查找路径的集合,Python默认情况下会查找sys. path返回的目录列表。列表是Python内置的数据结构,定义了一组数据,通常用来作为参数或返回值。
第4行代码的sys. argv是存储输入参数的列表。默认情况下,argv自带的参数是文件名
运行结果
from… import….语句
代码
# 不规范导入方式
from sys import path
from sys import argv
print(path)
print(argv)
第5行、第6行代码直接调用path、argv列表的内容,没有模块名的限定,这种写法不够规范。如果程序比较复杂,导入了很多模块,阅读程序的人并不了解path、argv来自哪个模块。而sys. path、sys. argv的写法可以清楚地知道path、argv来自sys模块。
多级目录导入方法
需要了解两个模块:
sys模块
os模块
# 多级目录导入方法:
import sys, os
sys.path() # 返回执行当前文件执行搜索的所有路径
BaseDir = os.path.abspath(__file__) # 获取当前文件的路径
addDir = os.path.dirname(os.path.dirname(BaseDir)) # 获取父目录地址
sys.path.append(addDir) #将改地址添加至默认搜索路径中
from logs import logger # 从包中导入模块
sys.path():其返回值是一个列表,内包含搜索的所有路径。
sys.path.append() : 是将目标路径追加至列表的末尾,也就是说,在搜索模块时,会先在当前目录进行搜索,进而到标准库,第三方库中进行搜索,如果都没有改模块,才会到追加的这个路径中进行搜索。如果标准库或第三方库中存在同名的模块,将不能访问到添加路径下的模块。
sys.path.insert(): 会把路径加入到python系统路径列表的最前边
来源:https://blog.csdn.net/weixin_42768634/article/details/115325518
猜你喜欢
- 两个多月来唯一一次有时间哄么么睡觉,我先给他讲了遍《从前有座山》,还是不睡。又给他讲了这个“保安的故事”:小A是名很敬业的保安,负责保护客户
- re模块是python独有的匹配字符串的模块,该模块中提供的很多功能是基于正则表达式实现的,而正则表达式是对字符串进行模糊匹配,提取自己需要
- 这是官方截图,mysql5.7安装后,会有一个默认密码,保存在mysql.log里面,找的他,并更改官方文档地址https://dev.my
- 1:strip()方法去除字符串开头或者结尾的空格>>> a = " a b c ">>&
- 磁盘搜索是性能的很大瓶颈。这个问题在数据大量增长以至于无法使用有效的缓存时尤为明显。或多或少随即访问大数据库时,就必然会有至少一次磁盘搜索来
- 一、excel的内容二、效果三、需要用的库:openpyxlsmptlibemail.mime.textemail.header四、实现步骤
- 首先忠心感谢凌宇5942给我的帮助!在他的启迪下我发现了另一种实现flash透明背景的办法,愿与大家共同探讨:凌宇5942告知的解决办法:在
- PHP重启php-fpm的方法启动php-fpm:/usr/local/php/sbin/php-fpmphp 5.3.3 以后的php-f
- Create PROCEDURE Batch_Delete @TableName nvarchar(100), --表名 @FieldNam
- 列表1~n输出步长为3的分组print([[x for x in range(1,101)][i:i+3] for i in range(0
- 阅读上一章:打印样式Chapter 12 CSS布局本书到此为止,讨论的主要是页面内部元素,也就是内容,但是大结构怎么办?长久以来,设计者都
- 前言本文实现一个 Python 脚本,用来批量卸载模拟器或者实体机上面的 App 以及清除 LogCat 缓存。开发 Android 的朋友
- 问题:编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 +
- 方案有很多种,我这里简单说一下:1. into outfileSELECT * FROM mytable
- openCV是一个开源的用C/C++开发的计算机图形图像库,非常强大,研究资料很齐全。本文重点是介绍如何使用php来调用其中的局部的功能。人
- 为了能够正常使用,先把所提供的global.asa文件放到该应用程序的根目录中。最简单的办法是把global.asa文件放到缺省Web网站的
- 本文实例为大家分享了Vue实现步骤条效果的具体代码,供大家参考,具体内容如下步骤总数和初始选择步骤 均可自定义设置,每个步骤title和de
- df.dropna()函数用于删除dataframe数据中的缺失数据,即 删除NaN数据.官方函数说明:DataFrame.dropna(a
- 回车和换行的历史:机械打字机有回车和换行两个键作用分别是:换行就是把滚筒卷一格,不改变水平位置。 (即移到下一行,但不是行首,而是和上一行水
- 软件版本Python 2.7.13; Win 10场景描述1、使用python读取指定长度的文本;2、使用python读取某一范围内的文本。