当前位置: 首页 > news >正文

19 python 模块

在办公室的日常工作中,我们常常会用到各种各样的工具,像计算器用于计算数据、打印机用来打印文件、订书机将纸张装订成册等。这些工具会被反复使用,而且不同的工具具有不同的功能。

一、模块的定义

在 Python 里,模块就如同一个工具柜,它把一些常用的功能封装起来,这样我们在需要的时候就能随时调用,避免了重复编写相同的代码。

模块(Module),是一个python文件,以.py结尾,里面实现了一些功能,有类、函数、变量等,我们可以拿过来用。拿过来用的方法叫导入

导入的语法:[from 模块名] import [块 |类|变量 | 函数 |*] [as 别名]

常用的组合方式有:

import 模块名
from 模块名 import 类、变量、方法等
from 模块名 import *
import 模块名 as 别名
from 模块名 import 功能名 as别名

二、模块的导入

2.1 import 模块名[,模块名]

import os# 获取当前工作目录
current_dir = os.getcwd()
print(f"当前工作目录是: {current_dir}")
# 当前工作目录是: D:\work\python\Base
import os,datetime# 获取当前工作目录
current_dir = os.getcwd()
print(f"当前工作目录是: {current_dir}")
# 获取当前日期和时间
now = datetime.datetime.now()
print(f"当前日期和时间是: {now}")# 获取当前日期
today = datetime.date.today()
print(f"当前日期是: {today}")
# 当前工作目录是: D:\work\python\Base
# 当前日期和时间是: 2025-03-28 15:09:02.191697
# 当前日期是: 2025-03-28

2.2 from 模块名 import 功能名

from time import sleepprint("Hello World!")
sleep(1)    # 让程序睡眠1秒
print("Hello World! again")

2.3 from 模块名 import *

from time import *print("Hello World!")
sleep(1)    # 让程序睡眠1秒
print("Hello World! again")

注意比较直接import和from import的区别

比如import sleep这个函数,如果采用import time的方式:调用sleep的写法如下,就需要在sleep前面加上time.,而如果我们from time import sleep,就直接使用sleep可以了。

import timeprint("Hello World!")
time.sleep(1)    # 让程序睡眠1秒
print("Hello World! again")

2.4 import 模块名 as 别名

import time as t1print("Hello World")
t1.sleep(1)
print("hello World again")
from time import sleep as slprint("Hello World")
sl(1)
print("hello World again")

三、自定义模块

有的时候系统或第三方没有我们需要的功能,就需要自己自定义模块,前面说过,python的模块就是一个py文件,模块的名字就是文件的名字。将一些常用的功能封装起来,方便在不同的项目中复用。

3.1 创建自定义模块

我们创建一个名为 math_utils.py 的模块,里面包含一些数学计算的函数。

# math_utils.py
def add(a, b):return a + bdef subtract(a, b):return a - b

3.2 导入自定义模块

将 math_utils.py 文件和要使用它的 Python 文件放在同一目录下,然后使用 import 语句导入该模块。这样,我们就可以将不同的功能放到不同的模块里了。

import math_utils# 使用模块中的加法函数
result = math_utils.add(3, 5)
print(f"3 + 5 的结果是: {result}")# 使用模块中的减法函数
result = math_utils.subtract(8, 2)
print(f"8 - 2 的结果是: {result}")
# 3 + 5 的结果是: 8
# 8 - 2 的结果是: 6

我们也可以使用 from...import 语句直接导入模块中的特定函数。

from math_utils import add# 直接使用 add 函数
result = add(4, 6)
print(f"4 + 6 的结果是: {result}")
# 4 + 6 的结果是: 10

还可以使用 as 关键字给模块或函数起别名。

from math_utils import subtract as sub# 使用别名调用函数
result = sub(9, 3)
print(f"9 - 3 的结果是: {result}")

相关文章:

19 python 模块

在办公室的日常工作中,我们常常会用到各种各样的工具,像计算器用于计算数据、打印机用来打印文件、订书机将纸张装订成册等。这些工具会被反复使用,而且不同的工具具有不同的功能。 一、模块的定义 在 Python 里,模块就如同一个…...

医疗智能体通信整合-大模型训练中沟通优化策略研究

一、引言:医疗模型训练的沟通困境 1.1 医疗 AI 发展背景 在数智化浪潮的推动下,医疗 AI 正以前所未有的速度融入现代医疗体系。从智能影像诊断助力医生精准识别病灶,到基于大数据分析的个性化药物研发,医疗 AI 在提升医疗效率、改善医疗质量方面展现出巨大潜力。据相关数据…...

LearnOpenGL-笔记-其六

今天我们来聊一些更深入的东西: Depth Testing 在之前的学习过程中,我们有接触过深度缓冲,彼时的深度缓冲的意义就是可以让我们体现出深度的差异从而达到立体的效果,而现在我们将在深度缓冲的基础进一步扩展,进行深度…...

【商城实战(91)】安全审计与日志管理:为电商平台筑牢安全防线

【商城实战】专栏重磅来袭!这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建,运用 uniapp、Element Plus、SpringBoot 搭建商城框架,到用户、商品、订单等核心模块开发,再到性能优化、安全加固、多端适配&#xf…...

Windows 10更新失败解决方法

在我们使用 Windows 时的时候,很多时候遇到系统更新 重启之后却一直提示“我们无法完成更新,正在撤销更改” 这种情况非常烦人,但其实可以通过修改文件的方法解决,并且正常更新到最新版操作系统 01修改注册表 管理员身份运行注…...

【安当产品应用案例100集】042-基于安当KADP实现机密文件安全流转

一、客户需求 某集团公司客户,在系统业务流中,存在大量的内部文件流转的需求。内部业务文件有不同的安全密级,最初在文件流转时,公司内部规定点对点的文件传输,要使用加密工具加密后再发给需要的一方。这种方式虽然能…...

【网络】Socket套接字

目录 一、端口号 二、初识TCP/UDP协议 三、网络字节序 3.1 概念 3.2 常用API 四、Socket套接字 4.1 概念 4.2 常用API (1)socket (2)bind sockaddr结构 (3)listen (4)a…...

蓝桥杯[每日一题] 真题:连连看

题目描述 小蓝正在和朋友们玩一种新的连连看游戏。在一个 n m 的矩形网格中,每个格子中都有一个整数,第 i 行第 j 列上的整数为 Ai, j 。玩家需要在这个网格中寻找一对格子 (a, b) − (c, d) 使得这两个格子中的整数 Aa,b 和 Ac,d 相等,且它…...

新手SEO优化实战快速入门

内容概要 对于SEO新手而言,系统化掌握基础逻辑与实操路径是快速入门的关键。本指南以站内优化为切入点,从网站结构、URL设计到内链布局,逐层拆解搜索引擎友好的技术框架;同时聚焦关键词挖掘与内容策略,结合工具使用与…...

Android面试总结之Glide源码级理解

当你的图片列表在低端机上白屏3秒、高端机因内存浪费导致FPS腰斩时,根源往往藏在Glide的内存分配僵化、磁盘混存、网络加载无优先级三大致命缺陷中。 本文从阿里P8级缓存改造方案出发,结合Glide源码实现动态内存扩容、磁盘冷热分区、智能预加载等黑科技&…...

基于类型属性的重载

算法重载 在一个泛型算法中引入更为特化的变体&#xff0c;这种设计和优化方式称为算法特化。之所以需要算法特化&#xff0c;原因有二&#xff1a; 针对特定类型使用更加合理的实现&#xff0c;对于const char *&#xff0c;less的第二个实现更加合理 template <typename…...

对称加密算法和非对称加密算法

在这个互联网普及的时代&#xff0c;在不同终端对敏感甚至机密数据进行传输是非常常见的场景&#xff0c;但是如何保证数据传输过程的安全性和高效性是一个值得深入探讨的问题。 为此&#xff0c;伟大的人类研究出了多种加密算法&#xff0c;我们可以大致将其分为两类&#xf…...

工程数字建造管理系统平台有哪些?好的数字建造管理系统推荐

一、什么是工程数字建造管理系统平台&#xff1f; 工程数字建造管理系统平台是一种集成了先进信息技术&#xff08;如云计算、大数据、物联网等&#xff09;的综合性管理工具&#xff0c;它旨在通过数字化手段提升工程建造全过程的管理效率和决策水平。这一平台不仅覆盖了工程…...

CMake ERROR: arm-none-eabi-gcc is not able to compile a simple test program.

用 cmake 构建 STM32 工程问题【已解决】 环境信息 os: ubuntu22.04gcc: arm-none-eabi-gcc (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7)) 13.2.1 20231009cmake: cmake version 3.22.1ninja: 1.10.1 问题 log [main] 正在配置项目: Olidy [driver] 删除 /home/pomegr…...

容器主机CPU使用率突增问题一则

关键词 LINUX、文件系统crontab 、mlocate根目录使用率 There are many things that can not be broken&#xff01; 如果觉得本文对你有帮助&#xff0c;欢迎点赞、收藏、评论&#xff01; 一、问题现象 业务一台容器服务器&#xff0c;近期经常收到cpu不定期抖动告警&#x…...

CTFshow【命令执行】web29-web40 做题笔记

web29----过滤关键字 正则匹配&#xff0c;过滤flag&#xff0c;可以使用通配符绕过 先查看目录 使用通配符&#xff1f;查看flag 点击查看源代码 web30---过滤函数和关键字 看到过滤了system执行系统命令和flag&#xff0c;php关键字 找一个与其功能差不多的执行函数passthr…...

L2正则化:优化模型的平滑之道

常见的正则化方法1. **L1正则化&#xff08;Lasso&#xff09;**1.1基本原理1.2特点1.3数学推导1.4参数更新1.5选择合适的正则化系数1.6优点1.7缺点1.8实际应用中的注意事项1.9示例 2. **L2正则化&#xff08;Ridge&#xff09;**L2正则化的定义L2正则化如何防止过拟合1. **限制…...

Golang 的 GMP 调度机制常见问题及解答

文章目录 Golang GMP 调度模型详解常见问题基础概念1. GMP 各组件的作用是什么&#xff1f;2. 为什么 Go 需要自己的调度器&#xff1f;3. GOMAXPROCS 的作用是什么&#xff1f; 调度流程4. Goroutine 如何被调度到 M 上执行&#xff1f;5. 系统调用会阻塞整个线程吗&#xff1…...

使用VSCODE导致CPU占用率过高的处理方法

1&#xff1a;cpptools 原因&#xff1a;原因是C/C会在全局搜索文件&#xff0c;可以快速进行跳转&#xff1b;当打开的文件过大&#xff0c;全局搜索文件会占用大量CPU&#xff1b; 处理方法&#xff1a; 1&#xff1a;每次只打开小文件夹&#xff1b; 2&#xff1a;打开大文…...

17--华为防火墙智能选路全解:网络世界的智能导航系统

华为防火墙智能选路全解&#xff1a;网络世界的智能导航系统 开篇故事&#xff1a;快递小哥的烦恼与网络世界的相似性 想象你是个快递站站长&#xff0c;每天要处理来自全国各地的包裹。突然某天遇到&#xff1a; &#x1f69a; 双11爆仓&#xff1a;如何把包裹最快送到客户手…...

CSS-BFC(块级格式化上下文)

一、BFC 的本质理解&#xff08;快递仓库比喻&#xff09; 想象一个快递分拣仓库&#xff08;BFC容器&#xff09;&#xff0c;这个仓库有特殊的规则&#xff1a; 仓库内的包裹&#xff08;内部元素&#xff09;摆放不影响其他仓库包裹必须整齐堆叠&#xff0c;不能越界不同仓…...

Java 大视界 -- Java 大数据在智慧港口集装箱调度与物流效率提升中的应用创新(159)

&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…...

ZygoPlanner:一种基于图形的三阶段框架,用于颧骨种植体植入的最佳术前规划|文献速递-医学影像人工智能进展

Title 题目 ZygoPlanner: A three-stage graphics-based framework for optimal preoperative planning of zygomatic implant placement ZygoPlanner&#xff1a;一种基于图形的三阶段框架&#xff0c;用于颧骨种植体植入的最佳术前规划 01 文献速递介绍 1.1 研究背景 颧…...

【2.项目管理】2.4 Gannt图【甘特图】

甘特图&#xff08;Gantt&#xff09;深度解析与实践指南 &#x1f4ca; 一、甘特图基础模板 项目进度表示例 工作编号工作名称持续时间(月)项目进度&#xff08;周&#xff09;1需求分析3▓▓▓░░░░░░░2设计建模3░▓▓▓░░░░░░3编码开发3.5░░░▓▓▓▓░░…...

python学习笔记(1)

为什么要学python 目前在研究网站的搭建,想通过python搭建一个我的世界资源买卖的平台,然后就开始研究python了,其实这不是我第一次研究python了,之前学的都不咋样,现在温故而知新,好好研究一下python。 Python的变量 在此之前先简单的介绍一下变量,给第一次接触的小…...

刚刚整理实测可用的股票数据API接口集合推荐:同花顺、雅虎API、智兔数服、聚合数据等Python量化分析各项数据全面丰富

在金融科技高速发展的今天&#xff0c;股票API接口已成为开发者、量化交易者和金融从业者的核心工具之一。它通过标准化的数据接口&#xff0c;帮助用户快速获取实时或历史市场数据&#xff0c;为投资决策、策略回测和金融应用开发提供支持。本文将深入解析股票API的核心功能、…...

2025 年吉林省燃气企业从业人员考试:实用备考攻略与考试提分要点​

2025 年吉林省燃气企业从业人员考试报名通过吉林燃气行业管理系统。报名资料包含企业的环保达标证明&#xff08;燃气行业涉及环保要求&#xff09;、个人的岗位任职证明等。实用备考攻略是&#xff0c;关注吉林在燃气分布式能源系统建设方面的进展&#xff0c;结合《燃气冷热电…...

dubbo http流量接入dubbo后端服务

简介 dubbo协议是基于TCP的二进制私有协议&#xff0c;更适合作为后端微服务间的高效RPC通信协议&#xff0c;也导致dubbo协议对于前端流量接入不是很友好。在dubo框架中&#xff0c;有两种方式可以解决这个问题&#xff1a; 多协议发布【推荐】&#xff0c;为dubbo协议服务暴…...

自动驾驶04:点云预处理03

点云组帧 感知算法人员在完成点云的运动畸变补偿后&#xff0c;会发现一个问题&#xff1a;激光雷达发送的点云数据包中的点云数量其实非常少&#xff0c;完全无法用来进行后续感知和定位层面的处理工作。 此时&#xff0c;感知算法人员就需要对这些数据包进行点云组帧的处理…...

小程序中过滤苹果设备中的表情(即 emoji)

在小程序中过滤苹果设备中的表情&#xff08;即 emoji&#xff09;&#xff0c;通常需要考虑以下几个方面&#xff1a;识别 emoji、处理用户输入、以及在显示或存储时进行过滤。以下是具体的实现思路和步骤&#xff1a; 1. 理解苹果中的表情&#xff08;Emoji&#xff09; 苹果…...

软件性能测试中的“假阳性”陷阱

软件性能测试中的“假阳性”陷阱主要表现为错误警报频繁、资源浪费严重、测试可信度降低。其中&#xff0c;错误警报频繁是最常见且最严重的问题之一&#xff0c;“假阳性”现象会导致开发团队在解决不存在的问题上花费大量时间。据行业调查显示&#xff0c;超过30%的性能优化成…...

现代优雅品牌杂志包装徽标设计衬线英文字体安装包 Relish – Aesthetic Font

CS Relish – 美学字体&#xff1a;优雅与现代简约的结合 永恒的现代 Serif 字体 CS Relish 是一种现代衬线字体&#xff0c;将极简主义美学与精致精致融为一体。凭借其时尚、干净的字体和平衡的结构&#xff0c;它给人一种优雅和现代的印象。这款字体专为那些欣赏微妙和优雅的…...

《Oracle服务进程精准管控指南:23c/11g双版本内存优化实战》 ——附自动化脚本开发全攻略

正在学习或者是使用 Oracle 数据库的小伙伴&#xff0c;是不是对于那个一直启动且及其占用内存的后台进程感到烦躁呢&#xff1f;而且即使是手动去开关也显得即为麻烦&#xff0c;所以基于我之前所学习到的方法&#xff0c;我在此重新整理&#xff0c;让大家动动手指就能完成开…...

《寒门枭雄传》章回目录与核心故事设计(36回)

《寒门枭雄传》章回目录与核心故事设计&#xff08;36回&#xff09; 主线&#xff1a;寒门崛起→权力异化→制度轮回 核心冲突&#xff1a;个人奋斗 vs 制度性压迫 第一卷京口草鞋摊的野望&#xff08;第1-12回&#xff09; 主题&#xff1a;寒门之困始于生存&#xff0c;终…...

C语言学习笔记(抱佛脚版)

毕业一年&#xff0c;发现记性是真的差&#xff0c;每次想起之前的知识总是想不全&#xff0c;看别人写的资料也懵懵懂懂。于是我索性自己再学一遍&#xff0c;并且记录一下。希望对你们也有所帮助。 正片开始&#xff01; 前面的什么if for都不难理解&#xff0c;嵌套的话也…...

DeepSeek-V3-0324 模型发布:开源 AI 性能再攀高峰,推理与编码能力逼近顶级闭源模型

2025 年 3 月 24 日&#xff0c;国内 AI 公司深度求索&#xff08;DeepSeek&#xff09;悄然推出 V3 模型的升级版本 DeepSeek-V3-0324。尽管此次更新并非市场期待的 V4 或 R2 版本&#xff0c;但其在推理速度、编码能力、数学推理及开源生态上的突破&#xff0c;仍迅速引发全球…...

清晰易懂的Cursor实现AI编程从安装到实战TodoList开发

一、Cursor简介与安装部署 什么是Cursor&#xff1f; Cursor是一款基于AI的智能代码编辑器&#xff0c;它集成了强大的AI编程助手功能&#xff0c;能够通过自然语言交互帮助开发者生成、优化和调试代码。与传统的代码编辑器不同&#xff0c;Cursor可以理解你的编程意图&#…...

(二) 深入了解AVFoundation - 播放:AVFoundation 播放基础入门

引言 AVFoundation 是 Apple 提供的强大多媒体框架&#xff0c;支持音视频播放、录制、处理等功能。在 iOS 开发中&#xff0c;AVFoundation 是实现视频播放的核心技术之一。 本篇文章将简单介绍如何使用 AVPlayer、AVPlayerItem 和 AVPlayerLayer 进行视频播放&#xff0c;并…...

重磅推出稳联技术Profinet转CANopen网关智能工厂解决方案!

重磅推出稳联技术Profinet转CANopen网关智能工厂解决方案&#xff01; 稳联技术Profinet转CANopen网关应运而生——它如同一座智能桥梁☺&#xff0c;打通两大主流工业协议&#xff0c;让异构网络无缝互联&#xff0c;助您释放设备潜力&#xff0c;实现真正的“万物互联”&…...

【问题解决】Linux安装conda修改~/.bashrc配置文件后,root 用户下显示 -bash-4.2#

问题描述 在Linux安装conda下的python环境时候&#xff0c;修改了~/.bashrc文件&#xff0c;修改完成后&#xff0c;再次进入服务器后&#xff0c;登录时候显示的不是正常的[rootlocalhost ~]#&#xff0c;而是-bash-4.2# 原因分析&#xff1a; 网上原因有&#xff1a;/root下…...

关于deepseek

DeepSeek&#xff1a;领先的人工智能研究与创新公司 公司简介 DeepSeek&#xff08;深度求索&#xff09;是一家专注于人工智能&#xff08;AI&#xff09;技术研发的创新公司&#xff0c;致力于推动大模型、自然语言处理&#xff08;NLP&#xff09;、机器学习&#xff08;M…...

EtherCAT转ProfiNet协议转换网关构建西门子PLC与海克斯康机器人的冗余通信链路

一、案例背景 某电子制造企业的5G通信模块组装线&#xff0c;采用西门子S7-1200PLC&#xff08;ProfiNet主站&#xff09;进行产线调度&#xff0c;而精密组装工序由3台海克斯康工业机器人&#xff08;EtherCAT从站&#xff09;完成。由于协议差异&#xff0c;机器人动作与PLC…...

李宏毅机器学习笔记(1)—机器学习基本概念+深度学习基本概念

机器学习基本概念 1、获取模型 步骤 1.1、假定未知函数 带未知参数的函数 1.2、定义损失函数 真实值&#xff1a;label MAE MSE 几率分布&#xff0c;cross-entropy? 1.3、优化 单独考虑一个参数 让损失函数最小&#xff0c;找导数为零的点 单独考虑w&#xff0c;w…...

RAG生成中的多文档动态融合及去重加权策略探讨

目录 RAG生成中的多文档动态融合及去重加权策略探讨 一、RAG生成概述 二、多文档动态融合策略 1. 拼接与分段编码 2. 独立编码与后续融合 3. 基于查询的动态加权 三、检索结果的去重与加权策略 1. 去重策略 2. 加权策略 四、实践中的挑战与思考 五、结语 RAG生成中的…...

对匿名认证的理解

概述&#xff1a;在 Spring Security 中&#xff0c;** 匿名认证&#xff08;Anonymous Authentication&#xff09;** 是一种特殊的认证机制&#xff0c;用于处理未提供有效凭证的请求。 匿名认证的本质 目的&#xff1a;允许未认证用户访问特定资源。原理&#xff1a; 当请求…...

leetcoed0044. 通配符匹配 hard

1 题目&#xff1a;通配符匹配 官方难度&#xff1a;难 给你一个输入字符串 (s) 和一个字符模式 ( p ) &#xff0c;请你实现一个支持 ‘?’ 和 ‘*’ 匹配规则的通配符匹配&#xff1a; ‘?’ 可以匹配任何单个字符。 ‘*’ 可以匹配任意字符序列&#xff08;包括空字符序…...

航拍数据集汇总,覆盖车辆/船舶检测/物体评估/城市景观……

随着无人机的普及化和计算机视觉技术的迅猛发展&#xff0c;无人机航拍作为一种创新的摄影方式&#xff0c;正以前所未有的速度走进大众视野。它打破了传统拍摄的局限&#xff0c;为我们开启了「上帝视角」。航拍硬件性能逐渐逼近物理极限&#xff0c;算法优化的难度也日益增大…...

【SECS】初识SECS协议

【SECS】初识SECS协议 基本知识流和功能函数数量官方文件中缩写标注正常是不是都是主机向设备端?对数据信息中第1字节第1-2位官网介绍 S1F1双向指令说明测试H发起端E发起端 参考资料 基本知识 SECS&#xff08;SEMI Equipment Communications Standard&#xff09;即半导体设…...

RL基础以及AlphaGo、AlphaGo Zero原理

RL基础 Q价值函数和状态价值函数 Action-Value function&#xff1a; Q ( s , a ) Q(s, a) Q(s,a)是agent在状态s下执行某一个动作&#xff08;如向上走&#xff09;&#xff0c;所获得的及时奖励和未来折扣的累计奖励 State-Value function&#xff1a; V ( s ) V(s) V(s)是…...

Android R adb remount 调用流程

目的&#xff1a;调查adb remount 与adb shell进去后执行remount的差异 调试方法&#xff1a;添加log编译adbd,替换system\apex\com.android.adbd\bin\adbd 一、调查adb remount实现 关键代码&#xff1a;system\core\adb\daemon\services.cpp unique_fd daemon_service_to…...