如何 Import 自定义的 Python 模块?

Python自动化测试~PO模型封装 在自动化中,Selenium自动化测试中有一个名字经常被提及PageObject(思想与面向对象的特征相 同),通常PO模型可以大大提高测试用例的维护效率 阅读详情

(点击上方快速关注并设置为星标,一起学Python)

来源:Python开发者

实际工作中,经常要用的功能能不能像导入python模块一样,通过import导入呢?答案当然是可以的,本文教你如何做,大家一起来学习吧!

背景

在实际的工作过程中,经常会用到一个功能,如果每次编写代码的时候都进行重新编写或者打开已经编写好的函数进行复制粘贴,这样就显得很麻烦,有没有什么方法可以像导入python模块的那样,直接把要用的函数以模块名+方法的形式调用呢?

答案当然是可以的,比如做数据分析时候经常要使用的功能是:实现某一路径下的所有xlsx的合并,文件如下

直接给出合并的函数,保留数据格式筛选的接口,将合并后的数据保存在fltered_data文件夹下的data_ok.xlsx文件中

def concat_excels(pattern):
  import pandas as pd
  import os
  import glob


  if not os.path.exists('filtered_data'):
      os.mkdir('filtered_data')


  file_paths = glob.glob(pattern)


  df = pd.DataFrame()
  for file_path in file_paths:
      df_ = pd.read_excel(file_path)
      df = pd.concat([df,df_])


  df.to_excel('filtered_data/data_ok.xlsx',index = False)
  print('Finished!')


if __name__ == '__main__':
  concat_excels('*.xlsx')


具体步骤

第一步:首先找到当前编辑器(可能会存在多个python解析器)对应的第三方库的安装路径,如果不知道具体的位置,可以在使用的编辑器窗口输入如下代码,这里以requests库为例,查看一下第三方库的文件位置,红色标记的即是

第二步:将上面的函数所在py文件命名,可以以自己名字的简称进行命名,即方便导入也方便自己记住。然后将保存好的py文件移动到上面的红色标记下,如下图

第三步:在欲合并的文件夹下创建一个py文件(比如命名为:合并数据.py),如下图

第四步:编辑代码,直接导入模块和方法完成文件数据的合并,代码运行截图如下,这样就是实现了多文件的合并,括号中保留了合并数据的筛选格式,方便进行之后不同格式的Excel文件的合并

from 模块名 import * 意思是导入该模块的所有的方法(可以直接调用函数)

扩展

通过这种方式,就可以把我们在日常工作中经常使用的方法(要实现的功能)都放置在以自己命名的py文件中,使用的时候直接就可以调用非常简单,如果需要添加,就打开这个py文件,把代码复制粘贴进去就可以了。

比如在处理图像时候,可以直接把图片的读取过程中色彩的矫正和图片的显示封装成函数,在使用的时候一行代码就可以实现之前繁杂的程序

使用演示:

(完)

Python将自己的代码封装成一个包供别人调用 在学习使用Python的过程中,当我们熟练到一定程度之后,我们会积累很多相关的经验和知识,有时候我们已经写过了很多代码,我们会想尝试着把我们的代码封装成一个类似于可以使用pip 安装的那种包的形式,或者是把自己的代码封装成一个包文件夹的形式,这样做的好处是可以让我们下次直接初始化使用或者是对接别人的时候可以让他们直接调用,这样会方便很多。 阅读详情

相关推荐

风变编程Python9 函数的学习

那么在进行函数学习之前,我们首先得来了解一下什么是函数 简单地说,函数就是编程语言中存在的一个模块,他是组织好的,可以重复使用的,用来实现单一功能的代码。 函数function()括号里跟的是函数的参数。参数指向的是函数要接受,要处理的数据,除了Python自带的常见的函数之外,比如input(),print(),range()等等,还包括有我们根据我们自身的需要设计出来的能解决我们自身问题的函数...

leianuo123的博客 5561

如何封装函数和调用函数,python代码

在 Python 中,要封装函数,需要使用 def 关键字,然后给出函数名和括号。在括号内,可以指定函数的参数。接下来,在函数体内编写代码。示例如下: def greet(name): print("Hello, " + name) 要调用函数,只需在函数名后面加上括号,并在括号内输入参数。例如: greet("Alice") # 输出 "Hello, Alice" 注意,在调用函数时,...

weixin_35754962的博客 1997

彻底解决VScode中采用python import自定义模块显示unresolved import 问题 和 无法跳转到自定义模块函数定义

最近在学习一个python代码时候,发现自定义的模块并不能被VScode编辑器所解析,出现如下图所示的提示: 这个问题对于有洁癖的程序员来说,简直不能忍。作为具有一定python经验的程序员来说,可以猜到是pythonpath 环境变量的问题。我在百度上找了好久,也没找到合适的解决方案。有的方案竟然是直接把这个错误提示关闭掉。。。 最终,在github的讨论中找到了相关解决方案(果然很多问题,需要去官方讨论区去学习经验-_-!),链接放在这里, 英文可以的童鞋自行阅读https://git.

fdd096030079的博客 2万+

chatgpt赋能python:Python中如何封装方法并调用

封装是一种将数据和方法保护起来的技术。在封装中,数据和方法都封装在一个类中,并且只能通过类的接口来使用。这意味着类的外部无法直接访问数据和方法,只能通过类的方法来访问。这种方法通常被称为接口。在Python中,封装使用类的访问权限来实现。Python中有两种访问权限:公有和私有。公有方法和属性可以在类内外都被访问,而私有方法和属性只能在类的内部访问。本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc。

vacvefito的博客 575

python基础--自定义模块、import、from......import......

自定义模块、import、from......import...... 1)模块的定义和分类 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:1097524789 1.模块是什么? 我们知道一个函数封装了一个功能,软件可能是有多个函数组成的。我们说一个函数就是一个功能,那么把一

Python学习Q群696455390 650

1panel面板实战:Docker容器存储路径迁移与优化指南

本文详细介绍了在1panel面板中迁移Docker容器存储路径的完整流程与优化方法。针对系统盘空间不足的常见问题,通过停服务、搬数据、改配置三个核心步骤,指导用户安全地将Docker数据目录迁移至更大容量的独立分区,并提供了迁移后的深度管理技巧与常见避坑指南,帮助用户优化服务器存储资源。

ol789012的博客 867

Python之自定义模块(import)

import模块 from-import模块 from-import*模块 import模块 语法:import 包名.模块名.函数名(实参列表) 如果导入模块有多个的话,操作如下 法一: import module import moudle1 module.fun1() 法二: import moudle,moudle1,os,math mo...

qq_38358499的博客 1805

VS Code 配置 LaTeX 写作环境完全指南

本文详细介绍了如何在 VS Code 中配置 LaTeX 写作环境,涵盖了从安装必备组件到高级功能的全面指南。首先,用户需要安装 LaTeX 发行版(如 TeX Live 或 MiKTeX)和 VS Code 插件(如 LaTeX Workshop)。接着,通过修改 settings.json 和 keybindings.json 文件,用户可以自定义编译、查看快捷键等基础配置。文章还提供了高效写作技巧,如使用代码片段和多文件项目管理,并介绍了高级功能如反向同步、公式预览和参考文献管理。此外,针对常见问题(

weixin_70043030的博客 1984

Python自定义模块与导入完全指南:吃透import/from...import,模块化编程入门

简单说,Python模块就是一个以.py为后缀的Python文件(如utils.py),文件中可以包含变量、函数、类、甚至可执行代码。代码拆分:按功能拆分代码(如工具函数放tools.py,数据处理放data.py),结构更清晰;代码复用:一个模块可以被多个程序导入使用,无需重复编写;隔离命名空间:不同模块中的变量/函数名可以重复,不会相互冲突(如a.py和b.py都可以有add()函数)。举个直观例子:你写了一个计算相关的文件calc.py,里面有add()和multiply()函数,这个。

2501_94051735的博客 1078

VMD分子可视化实战:5个隐藏技巧让你的科研图像秒变顶刊级别

本文深入探讨了VMD分子可视化软件在科研图像美化中的5个高阶技巧,旨在帮助研究者将分子结构图提升至顶刊级别。内容涵盖原子色彩与材质的艺术化定制、沉浸式分子环境构建、专业构图与视角控制、数据驱动的动态可视化以及自动化工作流建立,通过精细的色彩映射、光照调整、周期性边界展示和脚本自动化,显著增强图像的科学叙事性与视觉冲击力。

weixin_29240343的博客 422

Redis+QMT实战:如何用Stream模式实现聚宽策略的毫秒级跟单(附完整代码)

本文详细介绍了如何利用Redis Stream模式构建一个低延迟、高可靠的量化交易信号中继系统,实现从聚宽策略到本地QMT的毫秒级跟单。通过对比传统方案,解析了Redis Stream在消息持久化、消费组和显式确认方面的核心优势,并提供了完整的架构设计思路与核心代码实现,帮助量化开发者解决云端策略信号稳定传递至本地实盘的难题。

weixin_29280657的博客 477

python中使用import*导入部分模块_python基础--自定义模块、import、from......import.........

自定义模块、import、from......import......1)模块的定义和分类1.模块是什么?我们知道一个函数封装了一个功能,软件可能是有多个函数组成的。我们说一个函数就是一个功能,那么把一些常用的函数放在一个py文件中,那么这个文件就称之为模块。模块就是一些列常用功能的集合体。什么是模块:本质就是.py文件,封装语句的最小单位。2.为什么要使用模块从文件级别组织程序,更方便管理 随着...

weixin_39999116的博客 1053

《深入浅出多模态》(四):多模态经典模型CLIP

本文为《深入浅出多模态》系列多模态经典模型CLIP,首先从整体介绍多模态模型发展,对其中经典CLIP模型进行详述,从具体论文、数据集、代码、模型结构、结果等角度分析,本专栏适合从事多模态小白及爱好者学习,欢迎大家关注,如有侵权请联系删除!

专注大数据与人工智能技术分享,欢迎私信加群互相学习! 1045

python import自定义模块

转载:http://www.cnitblog.com/seeyeah/archive/2009/03/15/55440.html python导入模块关键是能够根据sys.path环境变量的值,找到具体模块的路径。 下面具体介绍几种常见的情况: (1)主程序与模块程序在同一目录下: 如下程序结构: 若在程序test1.py中导入模块mod1, 则直接使用import mod1或from mod1...

qq_41688455的博客 1650

第 5 篇:责任链模式 (Chain of Responsibility) —— 协议栈的流水线

本文介绍了责任链模式在嵌入式通信协议解析中的应用。针对传统"面条式"代码维护困难的问题,提出将各协议解析器解耦为独立处理单元,通过链表形式串联。文章详细展示了模式实现:定义抽象处理者接口、实现具体协议处理器、构建链表管理器。该方案具有内存占用低(O(1)栈空间)、可动态扩展、支持优先级调整等优势,并探讨了性能优化策略及动态插件系统等扩展应用,为嵌入式通信协议处理提供了清晰的架构方案。

一路往蓝-Anbo 的博客 180

Python实战项目2:b站评论采集

本文不对数据采集的过程做探讨,直接上代码。

lyccomcn的博客 3200

python import ... 和 from ... import ... 和各自使用方法差异的说明,以及使用自定义python包和模块

前言 我看到有些文章说的是: import 模块:导入一个模块;注:相当于导入的是一个文件夹,是个相对路径。 from…import:导入了一个模块中的一个函数;注:相当于导入的是一个文件夹中的文件,是个绝对路径。 这里说from … import 导入的是一个函数,这种说法是不对的。 经过自己实验: from … import … 可以导入包,模块,函数,类或者变量等等;而import 只能导入包或者模块,不能导入其他 具体说明及差异 拿常见的numpy举例。 部分一 以下是numpy一个子包的内容:

noblaker的博客 3101

构建 Skill 的完整指南

Skill开发指南摘要 Skill是用于定制Claude AI行为的指令包,包含SKILL.md主文件及可选脚本、参考文档和资源。本文提供了完整的Skill开发指南: 核心概念 三层渐进式披露结构(元数据/主指令/参考文档) 支持独立工作流和MCP集成 跨平台兼容性(Claude.ai/ClaudeCode/API) 开发流程 规划:明确2-3个具体用例 结构要求:kebab-case命名、必备YAML元数据 编写规范:清晰触发条件、分步指令、错误处理 典型应用模式 • 文档生成(类别1) • 工作流自动化

wjianwei666的专栏 298

python 自定义模块_Python import自定义模块方法

python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。下面将具体介绍几种常用情况:(1)主程序与模块程序在同一目录下:如下面程序结构:`-- src|-- mod1.py`-- test1.py若在程序test1.py中导入模块mod1, 则直接使用import mod1或from mod1 import *;(2)主程序所在目录是模块所在目录的父(或...

weixin_39620334的博客 180

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

python导入自定义模块_如何Import自定义的Python模块?

原标题:如何Import自定义的Python模块?实际工作中,经常要用的功能能不能像导入python模块一样,通过import导入呢?答案当然是可以的,本文教你如何做,大家一起来学习吧!背景在实际的工作过程中,经常会用到一个功能,如果每次编写代码的时候都进行重新编写或者打开已经编写好的函数进行复制粘贴,这样就显得很麻烦,有没有什么方法可以像导入python模块的那样,直接把要用的函数以模块名+方法...

weixin_39815031的博客 100

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

python import自定义模块方法

python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。 下面将具体介绍几种常用情况: (1)主程序与模块程序在同一目录下: 如下面程序结构: -- src |-- mod1.py– test1.py 若在程序test1.py中导入模块mod1, 则直接使用import mod1或from mod1 import *; (2)主程序所在目录是模块所在目录...

weixin_42631192的博客 925

如何Import自定义的Python模块?

实际工作中,经常要用的功能能不能像导入python模块一样,通过import导入呢?答案当然是可以的,本文教你如何做,大家一起来学习吧! 背景 在实际的工作过程中,经常会用到一个功能,如果每次编写代码的时候都进行重新编写或者打开已经编写好的函数进行复制粘贴,这样就显得很麻烦,有没有什么方法可以像导入python模块的那样,直接把要用的函数以模块名+方法的形式调用呢? 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人

weixin_52400971的博客 381

linux环境下python中import找不到自定义模块

linux环境下python中import找不到自定义模块 解决方法:修改环境变量/etc/profile 打开/etc/profile vim /etc/profile 在/etc/profile的最后一行添加 export PYTHONPATH=$PYTHONPATH:/home/mycode/ /home/mycode/ 为添加库的路径 生效:退出后输入以下命令 source /etc/profile OK!即刻生效,所有文件都可以import /home/mycode/下的模块了!

Zeus_daifu的博客 880

软件测试学习 之 Python 导入自定义模块 - import

python中import包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。 下面将具体分析几种常用情况: 程序结构如下: 即: -- parent_dir |-- parent_module.py |-- current_dir |-- current_module.py |-- main_function.p...

日暮途远无蹉跎 320
上一篇: 基于OpenCV的直方图匹配
下一篇: Python 代码转 Latex 公式,这个开源库用一行代码帮你搞定
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值