【Python】模块和包

模块(Module)是一个python文件,能定义函数,类和变量,能包含可执行的代码。

一个模块就是一个工具包,里面有工具供我们使用,以实现功能。

类似于C语言的库函数

模块的导入

组合形式:

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

自定义模块实际上就是自己写一个python文件

当导入了多个模块,调用功能同名时,调用的是后面导入的模块(覆盖前面)

两个下划线__

__main__变量

if __name__ == '__main__':

模块内部执行语句,导入模块时也会执行;而把执行的语句放在上面这条语句下,右键运行时会正常执行,而导入时就不会执行了。

__all__变量

__all__ = [ ]

如果一个模块中有此变量,当使用" from 模块名 import * "导入时,只能导入这个列表中的元素


当我们的模块文件越来越多时,包可以帮助我们管理这些模块

从物理上看,包就是一个文件夹,在该文件夹下包含了一个" __init__.py “文件,该文件夹可用于包含多个模块文件(” __init__.py "文件存在即为包,不存在就是普通的文件夹)

从逻辑上看,包的本质依然是模块

使用PyCharm新建包很方便

调用就是模块上多了个层级,即 包.模块名;方式和调用模块一样

在" __init__.py "中我们可以使用__all__变量,列表里面是模块名,功能类比上面

第三方包

需要安装,例如:

  • 科学计算:numpy
  • 数据分析:pandas
  • 大数据计算:pyspark , apache-flink
  • 图形可视化:matplotlib , pyecharts
  • 人工智能:tensorflow

使用pip进行安装(在命令提示符中)

pip install 包名称

因为是从国外下载,下载速度可能很慢,我们可以使用国内镜像源

Python-pip镜像源配置及国内常用镜像源

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/831523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flutter笔记:Widgets Easier组件库(9)使用弹窗

Flutter笔记 Widgets Easier组件库(9):使用弹窗 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress o…

自定义拦截器jwt登录校验接口模拟账号登录

五一闲在宿舍,本来想写一个自己的简易博客网站,发现vue基础太差,做不出来页面效果于是便放弃,但也没有完全放弃。于是我分析了一下简易博客的后端实现流程,除了最基本的crud以外,在自己目前的对接口的分析中…

网络安全运维类面试非技术问题

1、你熟悉哪些品牌的安全设备 答:天融信的ngfw防火墙,老牌防火墙厂商,功能比较齐全,像流量检测,web应用防护和僵木蠕等模块都有,界面是红白配色,设计稍微有点老 2、IPS用的是哪个牌子的 答&…

Ubuntu启动后进入GRUB故障-Minimal BASH like line editing is supported.

目录 1.问题描述 2.解决方案 2.1 临时性办法 2.2 工具永久性修复 总结 1.问题描述 PC安装Ubuntu系统第二天重启后提示GUN GRUB version 2.04,之前是WindowsOS装Ubuntu后无法进入图形界面。具体原因据网友提供线索据说是由于在Windows上进行更新/重装/修改了引…

第Ⅰ章-V package.json文件详解

第Ⅰ章-Ⅰ 了解Vue3 创建一个Vue3项目 第Ⅰ章-Ⅱ Vue3自定义创建项目 项目文件详解 第Ⅰ章-III Vite 创建vue3 项目 第Ⅰ章-IV npm yarn pnpm 包管理器 第Ⅰ章-V package.json文件详解 简洁详解基本字段name 定义项目名称version 定义项目版本号description 对项目的简短描述m…

2024年 Java 面试八股文——Mybatis篇

目录 1. 什么是Mybatis? 2. 说说Mybatis的优缺点 3. Xml映射文件中,都有哪些标签 4. #{}和&{}有什么区别 5. Mybatis是如何进行分页的,分页插件的原理是什么 6. Mybatis是如何将sql执行结果封装为目标对象并返回的? 7. Mybatis是怎…

从 Servlet 到 DispatcherServlet(SpringMvc 容器的创建)

DispatcherServlet 的继承体系 SpringMvc 是一个具有 Spring 容器(ApplicationContext)的 Servlet。其中,HttpServlet 属于 JDK 的内容,从 HttpServletBean 开始,便属于 Spring 体系中的内容。 HttpServletBean&…

华为手机 鸿蒙系统-android studio识别调试设备,开启adb调试权限

1.进入设置-关于手机-版本号,连续点击7次 认证:有锁屏密码需要输入密码, 开启开发者配置功能ok 进入开发者配置界面 打开调试功能 重新在androd studio查看可运行running devices显示了, 不行的话,重启一下android …

【开源物联网平台】window环境下搭建调试监控设备环境

🌈 个人主页:帐篷Li 🔥 系列专栏:FastBee物联网开源项目 💪🏻 专注于简单,易用,可拓展,低成本商业化的AIOT物联网解决方案 目录 一、使用docker脚本部署zlmediakit 1.1 …

Nextjs+Antd5.0打造面向AI的文档可视化引擎(最新更新)

hello,大家好,我是徐小夕。之前和大家分享了很多可视化,零代码和前端工程化的最佳实践,今天继续分享一下我开发的文档引擎 Nocode/WEP 的最新更新。 issue收集: https://github.com/MrXujiang/Nocode-Wep/issues 演示地…

ReentrantReadWriteLock(可重入读写锁)源码解读与使用

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java源码解读-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 目录 1. 前言 2. 读写锁是什么 3. ReentrantReadWriteLock是什么 4. 源码解…

JAVA停车场管理系统(不含GUI图形用户界面)

目录 任务要求 具体实现 Parking_Management_System类 Account类 Administrators类 User类 Tool类 任务要求 本代码用于实现一个简单的停车场管理系统,包含数据结构中的栈和队列 栈代表停车场停车的数量,先进后出,因为入口被视为一次只能过…

ColdDTA:利用数据增强和基于注意力的特征融合进行药物靶标结合亲和力预测

ColdDTA发表在Computers in Biology and Medicine 的一篇一区文章 突出 • 数据增强和基于注意力的特征融合用于药物靶点结合亲和力预测。 • 与其他方法相比,它在 Davis、KIBA 和 BindingDB 数据集上显示出竞争性能。 • 可视化模型权重可以获得可解释的见解。 …

Python梯度提升决策树库之lightgbm使用详解

概要 LightGBM是一个快速、分布式、高性能的梯度提升决策树(Gradient Boosting Decision Tree)库,它在机器学习和数据挖掘领域被广泛应用。本文将介绍LightGBM库的安装方法、主要特性、基本功能、高级功能、以及在实际应用中的场景和总结。 安装 首先,需要安装LightGBM库…

【信息系统项目管理师知识点速记】成本管理:估算成本

11.4 估算成本 估算成本是对完成项目工作所需资源成本进行近似估算的过程。该过程确定项目所需的资金,应定期在整个项目期间开展。 成本估算 成本估算是对完成活动所需资源的可能成本进行的量化评估,是根据已知信息进行的成本预测。估算成本涉及识别和分析可用于启动和完成…

IndyTcpServer使用详解

1、IndyTCPserver的创建 IdTCPServer1.DefaultPort:= 8000; IdTCPServer1.ListenQueue:= 1024; //同时处理请求队列数限制 IdTCPServer1.MaxConnections:= 1024; //同时连接数量限制,为0不限制连接数 IdTCPServer1.ContextClass:= TNewIdServerContext; //设置为自定义TIdSe…

第Y9周:重要模块解读

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制🚀 文章来源:K同学的学习圈子 目录 以con.py为例: 一、autopad 二、Conv 三、Focus 四、C2f 文件…

【Java基础】Maven的坐标和依赖

1. 前言 说到坐标,您最熟悉的定义应该是来自平面几何,即在一个平面坐标系中,坐标(x,y)表示距离 x 轴为 y,距离 y 轴距离为 x 的点,任何一个坐标都能够唯一标识该平面上的一个点。 …

白话NLP技术的演进发展

自然语言处理是人工智能的一个重要分支,旨在让计算机能够理解、生成和处理人类语言。我们每天都在使用自然语言,比如与人对话、阅读文章、撰写邮件等。NLP的目标就是要让机器也能像人一样处理语言,从而实现人机交互、信息检索、机器翻译、情感分析等多种应用。 要让机器理解自…

Golang | Leetcode Golang题解之第66题加一

题目&#xff1a; 题解&#xff1a; func plusOne(digits []int) []int {n : len(digits)for i : n - 1; i > 0; i-- {if digits[i] ! 9 {digits[i]for j : i 1; j < n; j {digits[j] 0}return digits}}// digits 中所有的元素均为 9digits make([]int, n1)digits[0]…