【Python- 包,自定义模块,import】

Python- 包,自定义模块,import

  • ■ 包
    • ■ 包创建
    • ■ 导入包,模块,函数方法
    • ■ __init__.py
    • ■ __all__ = ['my_module1']
  • ■ 自定义模块
    • ■ 新建模块
    • ■ 导入自定义模块使用
    • ■ 导入不同模块的同名功能
    • ■ __all__变量
  • ■ import
    • ■ import 模块
    • ■ 使用from导入time的sleep功能(函数)
    • ■ 使用 * 导入time模块的全部功能
    • ■ 使用as给特定功能加上别名

■ 包

■ 包创建

序号文件说明描述
1包就是文件夹添加 init.py 就变成了包。
2init.py 内部可以是空的。
3init.py 内部可以 all = [‘my_module1’] 导入指定my_module1模块。
步骤新建包说明
步骤一:新建文件夹 my_package 里面新建 init.py 文件。
步骤二:在my_package 新建模块文件例如my_module1.py,my_module2.py
步骤三:my_module1.py 中新建函数 info_print1()
步骤四:在调用py中导入模块 如下5种导入方式:
/*  __init__.py 文件*/
__all__ = ['my_module1']

my_module1.py文件

def info_print1():
    print("我是模块1的功能函数代码")

my_module2.py文件

def info_print2():
    print("我是模块2的功能函数代码")

■ 导入包,模块,函数方法

#方式一 导入包中的模块
import my_package.my_module1
my_package.my_module1.info_print1();

#方式二 从包中导入模块
from my_package import my_module1
my_module1.info_print1();

#方式三 从包模块中导入方法
from my_package.my_module1 import info_print1
info_print1()

#方式四 从包模块中导入方法 用as 重命名为pt
from my_package.my_module1 import info_print1 as pt
pt()

#方式五 从包中导入所有模块
from my_package import *
my_module1.info_print1();

#方式六 从包模块中导入所有方法
from my_package.my_module1 import *
info_print1()

init.py

文件夹中用__init__.py 来区分是包还是普通文件夹

all = [‘my_module1’]

import * 时 all 用来指定导入的模块。

■ 自定义模块

■ 新建模块

  1. 新建my_module.py 写一个函数 info_print1()

在这里插入图片描述

  1. 在调用py文件中导入模块或函数,
    import my_module1 # 导入模块 模块名字和文件名一直
    from my_module1 import info_print1 #导入函数
    在这里插入图片描述

■ 导入自定义模块使用

import my_module1
from my_module1 import test
test(1, 2)

■ 导入不同模块的同名功能

from my_module1 import test
from my_module2 import test
test(1, 2)

■ __all__变量

from my_module1 import *
test_a(1, 2)
# test_b(2, 1)

■ import

■ import 模块

使用import导入time模块使用sleep功能(函数)

import time     # 导入Python内置的time模块(time.py这个代码文件)
print("你好")
time.sleep(5)   # 通过. 就可以使用模块内部的全部功能(类、函数、变量)
print("我好")

■ 使用from导入time的sleep功能(函数)

from time import sleep
print("你好")
sleep(5)    
print("我好")

■ 使用 * 导入time模块的全部功能

from time import *      # *表示全部的意思
print("你好")
sleep(5)
print("我好")

■ 使用as给特定功能加上别名

import time as t
print("你好")
t.sleep(5)
print("我好")

from time import sleep as sl
print("你好")
sl(5)
print("我好")

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java 网络编程之TCP(二):基于BIO的聊天室

在上一篇【Java 网络编程之TCP(一):基于BIO】中,介绍Java中I/O和TCP的基本概念,本文在上文的基础上,实现一个基本的聊天室的功能。 聊天室需求描述: 聊天客户端:发送消息给所有其他客户端,接收…

《剑指 Offer》专项突破版 - 面试题 113、114 和 115 : 详解拓扑排序(C++ 实现)

目录 前言 面试题 113 : 课程顺序 面试题 114 : 外星文字典 面试题 115 : 重建序列 前言 拓扑排序是指对一个有向无环图的节点进行排序之后得到的序列。如果存在一条从节点 A 指向节点 B 的边,那么在拓扑排序的序列中节点 A 出现在节点 B 的前面。一个有向无环…

关于某次授权的大型内网渗透测试(1)

前期渗透: 打点:(任意文件上传) 直接发现头像处任意文件上传,这里直接上传冰蝎即可。 tasklist查看杀软 System Idle Process 0 N/A System …

细说postgresql之pg_rman备份恢复 —— 筑梦之路

pg_rman是一款开源的备份恢复软件,支持在线和基于PITR的备份恢复方式。 pg_rman类似于oracle的rman,可以进行全量、增量、归档日志的备份。 运行模式: 安装部署 Releases ossc-db/pg_rman GitHub 1、需要根据PG Server的版本,下…

05 MySQL--字段约束、事务、视图

1. CONSTRAINT 约束 创建表时,可以给表的字段添加约束,可以保证数据的完整性、有效性。比如大家上网注册用户时常见的:用户名不能为空。对不起,用户名已存在。等提示信息。 约束包括: 非空约束:not null检…

6.6 完数(project) educoder项目实训

前言 在最近的Python课上,做到这样一个“有趣”的作业,求得前n个完数,并输出其与其真约数的约数的加和式子,刚开始没怎么在意这个题,想着不就是做过好几遍了的语言基础练习题嘛,但是接下来的几小时没想到都…

探索设计模式的魅力:开启智慧之旅,AI与机器学习驱动的微服务设计模式探索

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 ✨欢迎加入探索AI与机器学习驱动的微服务设计模式之旅✨ 亲爱的科技爱好者们,有没…

【独家推荐】视频下载神器:一键解决Mac/Win视频下载转换难题!

在信息爆炸的时代,视频已经成为我们获取知识和娱乐的重要途径。然而,很多精彩视频并没有提供直接的下载链接,这就给广大视频爱好者带来了不小的困扰。不过,现在有了这款专为Mac和Windows用户打造的视频下载转换器,一切…

Redux入门:使用@reduxjs/toolkit构建React应用程序状态管理

随着应用程序复杂性的增加,有效管理应用程序状态变得越来越重要。Redux是一种流行的状态管理解决方案,随着应用程序复杂性的增加,有效管理应用程序状态变得越来越重要。Redux是一种流行的状态管理解决方案,但传统的Redux设置和使用过程比较繁琐。幸运的是,Redux官方团队推出了r…

C语言实现贪吃蛇项目(2)

先来看看效果: 20240420_212115 文章目录: 3.项目实现3.0宽字符的打印3.01本地化操作setlocale函数宽字符的打印 3.1贪吃蛇结构的创建和维护3.11贪吃蛇结构的创建3.12贪吃蛇的维护 3.2初始化游戏3.21.打印欢迎界面、隐藏光标和设置窗口大小3.22.绘制地图…

记录好用的python包

记录好用的python包 PipxCentos 安装pipx确保 Pip 被安装更新 Pip安装 Pipx添加 Pipx 到 PATH临时添加到 PATH:永久添加到 PATH: 验证 Pipx 安装 Hatch安装特性 Poetry安装准备工作创建虚拟环境激活虚拟环境安装包追踪 & 更新包常用配置pycharm 远程连接poetry创建的虚拟环…

pycharm创建的项目

pycharm生成django templates删出 settings.py

数据分析_商品维度占比及变化可视化分析(Pandas和Matplotlib)

数据分析_商品维度占比及变化可视化分析(Pandas和Matplotlib) 分析维度包括: 各商品年度销量占比 各商品月度销量变化 构建测试数据 这里你可以了解到: 如何生成时间相关的数据。 如何从列表(可迭代对象)中生成随机数据。 Pandas 的 DataFrame 自…

IOS 32位调试环境搭建

一、背景 调试IOS程序经常使用gdb,目前gdb只支持32位程序调试,暂不支持IOS 64位程序调试。IOS 32位程序使用GDB调试之前,必须确保手机已越狱,否则无法安装和使用GDB调试软件。下面详细介绍GDB调试IOS 32位程序的环境搭建。 二、I…

数字时代的智慧演奏

数字化时代,工业不再是孤独的机器运转,而是演绎着一场智能与数据的华丽交响。无数智能节点的联动,数据的涌动,成为工业的新活力,同时也是创新的源泉。 工业互联网将每个机器、设备连接在一起,打破了原本独立…

从预训练损失的角度,理解语言模型的涌现能力

原文:Understanding Emergent Abilities of Language Models from the Loss Perspective 摘要 本文从预训练损失的角度重新审视语言模型的涌现能力,挑战了以往以模型大小或训练计算量为标准的观念。通过实验,作者发现预训练损失是预测下游任…

SRIO系列-时钟逻辑与复位逻辑

一、前言 上一篇讲述了SRIO协议的基本概念,传输的HELLO帧格式、事务类型等,本篇说一下SRIO IP核的时钟关系。 基本的IP设置可以参考此篇文章:【高速接口-RapidIO】Xilinx SRIO IP 核详解-CSDN博客 二、时钟关系 PHY可以在两个时钟域上运行…

C#语法知识之运算符

3、运算符 目录 3、运算符1、算数运算符思考 秒转化时间 2、字符串拼接3、条件运算符4、逻辑运算符5、位运算符6、三目运算符思考 闰年 1、算数运算符 1、赋值符号 //把右侧的值赋给左侧的变量2、算数运算符 _ * / float f 1 / 2f; %3、算数运算符的优先级 //乘除余优先级高…

【数据结构3-栈和队列】

数据结构3-栈和队列 1 栈-特殊的线性表-先进后出1.1 栈的三个案例 2 队列-与栈相反-先进先出2.1 队列的案例 3 用C实现栈的代码:4 用C实现队列的代码 1 栈-特殊的线性表-先进后出 1.1 栈的三个案例 2 队列-与栈相反-先进先出 2.1 队列的案例 3 用C实现栈的代码&…

<计算机网络自顶向下> TCP拥塞

目录 TCP拥塞控制机制 TCP拥塞感知 TCP速率控制方法 TCP拥塞控制和流量控制的联合动作 TCP拥塞控制策略 TCP吞吐量 TCP公平性 TCP拥塞控制机制 端到端的拥塞控制机制 路由器不向主机提供有关拥塞的反馈信息 路由器负担较轻 符合网络核心简单的TCP/IP架构原则 端系统根据自…