萌新学 Python 之模块管理
模块就是一个 python 代码文件,模块可以包含函数、类,可以提高代码复用率提高效率
python 模块主要分为三种:
1.内置模块:python 自带的模块,导入后可以直接使用,比如 import 模块名
2.第三方模块:通过 pip 工具安装后才可以使用,比如 pip install numpy
3.自定义模块:自己写的代码,包括类和函数,文件名就是模块名,使用方式 import 模块(文件名)
导入模块的方式:import 模块名
使用模块中的函数:模块名.函数
举例:导入 math 数学运算模块
可以通过 dir 查看模块中的函数
math 模块中常用的函数有:
math.ceil() 向上取整、math.floor() 向下取整、math.pow(x, y) 幂次方、math.sqrt() 开根号
import math # 数学运算
print(len(dir(math)), dir(math)) # 查看模块中的函数# 向上取整
print(math.ceil(0.9)) # 1
# 向下取整
print(math.floor(0.9)) # 0
# 幂次方
print(math.pow(2, 2)) # 4.0
# 开根号
print(math.sqrt(9)) # 3.0
从这个模块下导入所有函数:from 模块 import *
从模块中导入指定的函数,可以直接使用:from 模块 import 函数
如果函数名特别长,可以通过取别名的方式来导入:from 模块 import 函数 as 别名
__name__ 为所有模块的内置函数,主要用来控制程序的运行方式
if __name__ == '__main__':pass
当 .py 文件被其他文件当作模块导入时,__name__ 属性自动设置为模块名(当前文件名)
当 .py 文件被当作脚本运行时,__name__ 属性自动设置为 __main__

calc.py 文件:
def add(x, y):return x + ydef sub(x, y):return x - yif __name__ == '__main__':print(add(1, 2), sub(2, 1)) # 3 1
invoke.py 文件:
from demo.demo import calcprint(calc.add(2, 1), calc.sub(1, 2)) # 3 -1
包就是一个目录,存放多个 python 代码文件的目录,使用方式:包.模块
包的所有目录下有一个 __init__.py 文件,该文件可以为空,也可以用来初始化模块

# 初始化模块
from .calc import add, sub__all__ = 'add', 'sub'
模块和目录名不要使用特殊字符
相关文章:
萌新学 Python 之模块管理
模块就是一个 python 代码文件,模块可以包含函数、类,可以提高代码复用率提高效率 python 模块主要分为三种: 1.内置模块:python 自带的模块,导入后可以直接使用,比如 import 模块名 2.第三方模块&#…...
6.3 - UART串口数据发送之中断
文章目录 1 实验任务2 系统框图3 软件设计 1 实验任务 本实验使用中断方式实现UART串口数据的连续发送。 2 系统框图 参见6.1。 3 软件设计 注意事项: 系统上电、程序下载后,此时TX FIFO虽然为空,但并不会触发空中断;空中断…...
Fisher信息矩阵(Fisher Information Matrix, FIM)与自然梯度下降:机器学习中的优化利器
Fisher信息矩阵与自然梯度下降:机器学习中的优化利器 在机器学习尤其是深度学习中,优化模型参数是一个核心任务。我们通常依赖梯度下降(Gradient Descent)来调整参数,但普通的梯度下降有时会显得“笨拙”,…...
Mysql基础-多表查询(详细版)
目录 一、表的关系类型与适用场景二、连接方式与使用场景三、易错点与注意事项四、总结 一、表的关系类型与适用场景 1. 一对一关系 场景:一个表的记录对应另一个表的唯一记录 案例:用户表 用户详情表 CREATE TABLE users (id INT PRIMARY KEY,name…...
港科大提出开放全曲音乐生成基础模型YuE:可将歌词转换成完整歌曲
YuE是港科大提出的一个开源的音乐生成基础模型,专为音乐生成而设计,专门用于将歌词转换成完整的歌曲(lyrics2song)。它可以生成一首完整的歌曲,时长几分钟,包括朗朗上口的声乐曲目和伴奏曲目。YuE 能够模拟…...
Python学习第十七天之PyTorch保姆级安装
PyTorch安装与部署 一、准备工作二、pytorch介绍三、CPU版本pytorch安装1. 创建虚拟环境2. 删除虚拟环境1. 通过环境名称删除2. 通过环境路径删除 3. 配置镜像源4. 安装pytorch1. 首先激活环境变量2. 进入pytorch官网,找到安装指令 5. 验证pytorch是否安装成功 四、…...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4—download-the-linux-kernel-update-package...
什么是 Java 中的线程安全?
回答 Java 中的线程安全(Thread Safety)指的是在多线程环境下,当多个线程同时访问和操作共享资源(如对象、变量、数据结构等)时,能够保证程序的正确性,不会出现数据不一致、竞争条件࿰…...
计算机视觉(opencv-python)入门之图像的读取,显示,与保存
在计算机视觉领域,Python的cv2库是一个不可或缺的工具,它提供了丰富的图像处理功能。作为OpenCV的Python接口,cv2使得图像处理的实现变得简单而高效。 示例图片 目录 opencv获取方式 图像基本知识 颜色空间 RGB HSV CV2常用图像处理方…...
QT:Graphics View的坐标系介绍
在 Qt 的 Graphics View 框架中,存在三种不同的坐标系,分别是 物品坐标系(Item Coordinates)、场景坐标系(Scene Coordinates) 和 视图坐标系(View Coordinates)。这三种坐标系在图形…...
530 Login fail. A secure connection is requiered(such as ssl)-java发送QQ邮箱(简单配置)
由于cs的csdN许多文章关于这方面的都是vip文章,而本文是免费的,希望广大网友觉得有帮助的可以多点赞和关注! QQ邮箱授权码到这里去开启 授权码是16位的字母,填入下面的mail.setting里面的pass里面 # 邮件服务器的SMTP地址 host…...
vs2015下使用openmp
一 OPENMP 简介 OpenMP(Open Multi-Processing)是一个基于共享内存的并行编程API,通过编译器指令实现多线程并行开发。其核心特性包括: 1)通过简单的#pragma指令实现并行化 2)支持增量并行(逐步优化代码) 3)跨平台(Windows/Linux/macOS) 4)支持C/C++/Fortra …...
Docker 搭建 Gitlab 服务器 (完整详细版)
参考 Docker 搭建 Gitlab 服务器 (完整详细版)_docker gitlab-CSDN博客 Docker 安装 (完整详细版)_docker安装-CSDN博客 Docker 日常命令大全(完整详细版)_docker命令-CSDN博客 1、Gitlab镜像 # 查找Gitlab镜像 docker search gitlab # 拉取Gitlab镜像 docker pull gitlab/g…...
【万字长文】开源之播对话白鲸开源CEO郭炜--乐观主义的开源精神走得更远
本文为白鲸开源科技CEO郭炜1小时深度访谈全记录 来源于:开源之播」Episode15:对话郭炜–乐观主义的开源精神走得更远 大家好,我是郭炜,开源圈的“郭大侠”。作为 Apache 基金会的成员,我曾参与并孵化了多个开源项目,如…...
机试刷题_674. 最长连续递增序列【python】
674. 最长连续递增序列 class Solution:def findLengthOfLCIS(self, nums: List[int]) -> int:if not nums:return 0if len(nums)1:return 1left 0right len(nums)-1tmp []tmp.append(nums[0])res 0while left<right:if nums[left]<nums[left1]:tmp.append(nums[l…...
ipe网络安全
🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 什么是IDS? IDS是英文"Intrusion Detection Systems"的缩写,中文意思是"入侵检测系统"。 大家还记得「网络安全」安…...
QT:QPen、QBrush、与图形抗锯齿的关联
QPen QPen 是 Qt 框架中用于定义绘图时使用的画笔属性的类。在使用 QPainter 进行 2D 绘图时,QPen 可以控制线条的外观,比如线条的颜色、宽度、样式(如实线、虚线等)、端点样式(如方形端点、圆形端点等)和…...
android keystore源码分析
架构 Android Keystore API 和底层 Keymaster HAL 提供了一套基本的但足以满足需求的加密基元,以便使用访问受控且由硬件支持的密钥实现相关协议。 Keymaster HAL 是由原始设备制造商 (OEM) 提供的动态加载库,密钥库服务使用它来提供由硬件支持的加密服…...
【12】智能合约开发入门
12-1 在线合约开发 Cloud IDE简介 基本框架 Cloud IDE是BaaS合约平台提供的在线合约开发工具 IDE是一个去中心化应用(Dapp),通过JavaScript SDK直接与区块链平台通信,进行合约部署和调用 核心功能 合约工程管理 合约编辑与编…...
web安全——分析应用程序
文章目录 一、确定用户输入入口点二、确定服务端技术三、解析受攻击面 一、确定用户输入入口点 在检查枚举应用程序功能时生成的HTTP请求的过程中,用户输入入口点包括: URL文件路径 通常,在查询字符?之前的URL部分并不视为用户输入入口&am…...
Vivado FFT IP核避坑指南:从Matlab数据生成到FPGA验证的完整流程
Vivado FFT IP核实战避坑指南:从Matlab数据生成到FPGA验证的全链路解析 在FPGA信号处理领域,FFT(快速傅里叶变换)是实现频域分析的核心运算单元。Xilinx Vivado提供的FFT IP核虽然功能强大,但在实际工程落地过程中&…...
终极指南:如何快速配置Pushy实现Java APNs推送服务
终极指南:如何快速配置Pushy实现Java APNs推送服务 【免费下载链接】pushy A Java library for sending APNs (iOS/macOS/Safari) push notifications 项目地址: https://gitcode.com/gh_mirrors/pu/pushy Pushy是一个功能强大的Java库,专为发送A…...
【实战指南】融合DEM与水文分析的地表径流模拟与流域划分——以海河流域为例(含完整流程)
1. 从DEM到水文分析的核心逻辑 很多人第一次接触DEM数据时,会觉得这就是个普通的地形高程图。但当我用DEM预测出某次暴雨后的洪水淹没范围时,才真正理解到数字高程背后隐藏的水文密码。DEM数据就像地形的DNA,通过水文分析工具链的解码&#x…...
为什么要做 GeoPipeAgent底
指令替换 项目需求:将加法指令替换为减法 项目目录如下 /MyProject ├── CMakeLists.txt # CMake 配置文件 ├── build/ #构建目录 │ └── test.c #测试编译代码 └── mypass2.cpp # pass 项目代码 一,测试代码示例 test.c // test.c #includ…...
STM32WB55双核架构实战:基于CubeMX与IPCC/HSEM的蓝牙通信框架快速构建
1. STM32WB55双核架构设计解析 第一次拿到STM32WB55开发板时,我盯着芯片型号看了半天——这个"双核"到底该怎么用?后来在项目里摸爬滚打才发现,理解它的双核分工是开发蓝牙应用的关键。这颗芯片的M4核和M0核就像公司里的两个部门&a…...
从零备份到量产部署:RK3588文件系统迁移全流程指南(含Ubuntu/Debian/麒麟系统适配)
从零备份到量产部署:RK3588文件系统迁移全流程指南(含Ubuntu/Debian/麒麟系统适配) 1. 企业级文件系统迁移的核心挑战 在RK3588芯片组的量产部署中,文件系统迁移往往成为最耗时的环节。我曾亲历一个汽车电子项目,团队花…...
新手避坑指南:用URDF给机械臂建模时,origin和inertial参数到底该怎么算?
机械臂URDF建模实战:origin与inertial参数计算完全指南 当你在Rviz中看到机械臂模型"飘在空中"或在Gazebo仿真时出现诡异抖动,八成是origin和inertial参数设置出了问题。这两个看似简单的参数,实则是URDF建模中最容易踩坑的"暗…...
机器学习40篇-开篇词-打通修炼机器学习的任督二脉
分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击人工智能教程https://www.captainai.net/troubleshooter 在新进展层出不穷的今日,机器学习依然占据着人工智能的核心…...
千问3.5-9B人工智能导论:用模型讲解机器学习与深度学习核心概念
千问3.5-9B人工智能导论:用模型讲解机器学习与深度学习核心概念 1. 当AI成为你的知识导师 想象一下,你面前坐着一位既懂技术又擅长教学的AI导师。它不仅掌握最前沿的人工智能知识,还能用生活中的例子帮你理解复杂概念。这就是千问3.5-9B作为…...
手机号逆向查询QQ号:Python开发者的高效查询解决方案
手机号逆向查询QQ号:Python开发者的高效查询解决方案 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 你是否曾在工作中需要快速验证手机号与QQ号的绑定关系?面对批量数据时,手动查询不仅耗时耗力&…...
