python包导入详细教程脚本之家_python包导入详细教程脚本之家_Python使用import导入本地脚本及导入模块的技巧总结......
本文实例讲述了Python使用import导入本地脚本及导入模块的技巧。分享给大家供大家参考,具体如下:
导入本地脚本
import 如果你要导入的 Python 脚本与当前脚本位于同一个目录下,只需输入 import,然后是文件名,无需扩展名 .py。 伪代码如下:
import useful_functions
useful_functions.add_five([1, 2, 3, 4])
我们可以为导入模块添加别名,以使用不同的名称引用它。
import useful_functions as uf
uf.add_five([1, 2, 3, 4])
使用 if main 块
为了避免运行从其他脚本中作为模块导入的脚本中的可执行语句,将这些行包含在 if __name__ == "__main__" 块中。或者,将它们包含在函数 main() 中并在 if main 块中调用该函数。
每当我们运行此类脚本时,Python 实际上会为所有模块设置一个特殊的内置变量 __name__。当我们运行脚本时,Python 会将此模块识别为主程序,并将此模块的 __name__变量设为字符串 “main”。对于该脚本中导入的任何模块,这个内置 __name__变量会设为该模块的名称。因此,条件 if __name__ == "__main__"会检查该模块是否为主程序。
在同一目录下创建如下两个脚本文件,并在终端里运行这些脚本!实验 if main 块并访问导入模块中的对象!
demo.py 文件
# demo.py
import useful_functions as uf
scores = [88, 92, 79, 93, 85]
mean = uf.mean(scores)
curved = uf.add_five(scores)
mean_c = uf.mean(curved)
print("Scores:", scores)
print("Original Mean:", mean, " New Mean:", mean_c)
print(__name__)
print(uf.__name__)
useful_functions.py文件
# useful_functions.py
def mean(num_list):
return sum(num_list) / len(num_list)
def add_five(num_list):
return [n + 5 for n in num_list]
def main():
print("Testing mean function")
n_list = [34, 44, 23, 46, 12, 24]
correct_mean = 30.5
assert(mean(n_list) == correct_mean)
print("Testing add_five function")
correct_list = [39, 49, 28, 51, 17, 29]
assert(add_five(n_list) == correct_list)
print("All tests passed!")
if __name__ == '__main__':
main()
如果运行 $ python demo.py,那么有如下输出结果:
Scores: [88, 92, 79, 93, 85]
Original Mean: 87.4 New Mean: 92.4
__main__
useful_functions
如果运行 $ python useful_functions.py,那么有如下输出结果:
Testing mean function
Testing add_five function
All tests passed!
import 导入模块的技巧
要从模块中导入单个函数或类:
from module_name import object_name
要从模块中导入多个单个对象:
from module_name import first_object, second_object
要重命名模块:
import module_name as new_name
要从模块中导入对象并重命名:
from module_name import object_name as new_name
要从模块中单个地导入所有对象(请勿这么做):
from module_name import *
如果你真的想使用模块中的所有对象,请使用标准导入 module_name 语句并使用点记法访问每个对象
import module_name
为了更好地管理代码,Standard 标准库中的模块被拆分成了子模块并包含在软件包中。软件包是一个包含子模块的模块。子模块使用普通的点记法指定。子模块的指定方式是软件包名称、点,然后是子模块名称。你可以如下所示地导入子模块
import package_name.submodule_name
希望本文所述对大家Python程序设计有所帮助。
python包导入详细教程脚本之家_python包导入详细教程脚本之家_Python使用import导入本地脚本及导入模块的技巧总结......相关推荐
- 模块是python中普通的文件吗_python 包和模块
当执行代码时,从这行开始执行:当外部调用代码为模块时,此部分不会被执行. if __name__ == '__main__': pass 模块是对代码的整理,包是对模块的整理. 模块 Python 模 ...
- 【教程】基于Arduino+ESP32的带透明显示接入米家的智能门锁的详细图文教程
目录 说在前面 一. Arduino_ESP32环境搭建 二. 硬件选型 2.1系统整体接线图 三. 软件设计和关键代码 3.1 软件工作流程逻辑 3.2显示设计 3.2.1 TFT_eSPI库安装 ...
- python脚本自动运行失败_Linux下Python脚本自启动和定时启动的详细步骤
一.Python开机自动运行 假如Python自启动脚本为 auto.py .那么用root权限编辑以下文件: sudo vim /etc/rc.local 如果没有 rc.local 请看 这篇文章 ...
- python程序开机自启动_Linux下Python脚本自启动和定时启动的详细步骤
一.Python开机自动运行 假如Python自启动脚本为 auto.py .那么用root权限编辑以下文件: sudo vim /etc/rc.local 如果没有 rc.local 请看 这篇文章 ...
- python脚本开头怎么写_浅谈Python脚本开头及导包注释自动添加方法
浅谈Python脚本开头及导包注释自动添加方法 1.开头:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定 #!/usr/bin/python 是用来 ...
- 三维家可以导入别人的方案吗_三维家辅助工具如何使用?三维家辅助工具安装使用教程...
三维家辅助工具是三维家3D云设计平台的辅助软件,可以通过这个工具直接批量上传产品模型和贴图,还能预览3vj格式的文件,可以借助这个辅助工具启动CAD,并从CAD导出图纸,有些朋友不太清楚这款软件是如何 ...
- c调用python第三方包大包_Python 包构建教程
setuptools 和 setup.py Setuptools 和 distutils 都是用于编译.分发和安装 python 包的一个工具,特别是在包依赖问题场景下非常有用,它是一个强大的包管理工 ...
- python导入包相当于什么_Python包及其定义和引用详解
对于一个需要实际应用的模块而言,往往会具有很多程序单元,包括变量.函数和类等,如果将整个模块的所有内容都定义在同一个 Python 源文件中,这个文件将会变得非常庞大,显然并不利于模块化开发. 什么是 ...
- python导入本地文件-Python使用import导入本地脚本及导入模块的技巧总结
本文实例讲述了Python使用import导入本地脚本及导入模块的技巧.分享给大家供大家参考,具体如下: 导入本地脚本 import 如果你要导入的 Python 脚本与当前脚本位于同一个目录下,只需 ...
最新文章
- 【解决方案】Selenium打开网站却显示空白
- php扫描蓝牙设备接口,微信硬件蓝牙扫描某个设备接口onScanWXDeviceResult
- typeof null的返回值是什么?_数据类型与typeof
- 华南理工大学和浙大计算机学院,浙江大学和华南理工大学的办学实力比较
- hive大数据倾斜总结
- jQuery以JSONP的访问调用一个WCF REST服务
- turtle生成二叉树
- Linux 内存管理 | 连续分配方式 和 离散分配方式
- note20220227.docx
- win7笔记本蓝牙连接蓝牙耳机设备,无法播放音乐,听不见声音
- 【转载】com.mysql.jdbc.Driver 与 org.gjt.mm.mysql.Driver的区别
- 全景感知、智能融合|视图计算平台全新发布
- Wargames学习笔记--Bandit
- 工业数据治理:全解时序数据处理工具
- 35岁,还学编程是不是很难
- PIXHAWK2.4.8飞控如果做双罗盘校准
- MatLab中矢量图的导出
- JSOI 2008-help
- 泰山OFFICE技术讲座:逻辑字号、中文字号、保存字号、布局字号、绘制字号
- 如何下载.NET Framework