模块跟包的使用

模块和包

什么是模块

模块的导入方法

包和模块的区别

导入模块的方式

  • import 模块名

  • from 模块名 import 功能名

  • from 模块名 import *

  • import 模块名 as 别名

  • from 模块名 import 功能名 as 别名

制造模块

在Python中,每个Python⽂件都可以作为⼀个模块,模块的名字就是⽂件的名字。也就是说⾃定义模块名必须要符合标识符命名规则。

新建一个python文件,命名my_demo,并在里面写一个函数

# -*- coding:utf-8 -*-
def func(a,b):
    print(a+b)
​
class Func(object):
    def __init__(self,a,b):
        self.a = a
        self.b = b
​
    def func_demo(self):
        print(self.a+self.b)
如果⼀个模块⽂件中有 __all__ 变量,当使⽤ from xxx import * 导⼊时,只能导⼊这个列表中的元素。
__all__ = ['testA']
def testA():
     print('testA')
def testB():
     print('testB')

调用模块

import 模块名

制作包

[New] — [Python Package] — 输⼊包名 — [OK] — 新建功能模块(有联系的模块)。

导入包

# 方法一
import 包名.模块名
包名.模块名.⽬标

包里面存放模块

# 方法二
# 注意:必须在 __init__.py ⽂件中添加 __all__ = [] ,控制允许导⼊的模块列表。
from 包名 import *
模块名.⽬标

常用的python内置模块

1、时间模块

  • 获取当前时间

从返回浮点数的时间戳方式向时间元组转换,只要将浮点数传递给如localtime之类的函数

import time
now_time1 = time.localtime(time.time())
print(now_time1)
  • 获取格式化的时间

import time
now_time2 = time.asctime(time.localtime(time.time()))
print(now_time2)
  • 格式化日期

import time
# 格式化成2022-09-70 时:分:秒形式
now_time3 = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
print(now_time3)
  • 程序睡眠

import time
time.sleep(5)

  • python中时间日期格式化符号

年
- %y 两位数的年份表示(00-99)
- %Y 四位数的年份表示(0000-9999)
​
月
- %m 月份(01-12)
​
日
- %d 月内中的一天(0-31)
​
时
- %H 24小时制小时数(0-23)
- %I 12小时制小时数(01-12)
​
分
- %M 分钟数(00-59)
​
秒
- %S 秒(00-59)

2、深浅拷贝

  • 等号拷贝

    相当于对于电脑中某个文件夹新建了一个快捷图标,快捷图标永远和原文件是一致的。

    list1 = ["张三", "李四", "王五", "赵六"]
    list2 = list1
    print(id(list1))
    print(id(list2))
    ​
    list1[1] = "坤哥"
    print(list1)
    print(list2)

  • copy浅拷贝

    相当于对于电脑中某个文件夹内部的所有子文件夹新建了快捷图标,放到新的文件夹中,所以内部子文件夹内数据会跟着原来文件的改变而改变。

list1 = [1, 2, 3, 4, ['a', 'b', 'c']]
list2 = list1.copy()
​
print("列表1的ID:", id(list1))
print("列表2的ID:", id(list2))
​
print("修改元素之前:", list1)
print("修改元素之前:", list2)
​
print("列表1当中元素ID:", id(list1[4][0]))
print("列表1当中元素ID:", id(list2[4][0]))
​
list1[4][0] = "坤哥"
​
print("修改元素之后:", list1)
print("修改元素之后:", list2)

  • deepcopy深拷贝

    相当于对于电脑中某个文件夹用u盘拷贝了一个备份。所以原来电脑中文件夹内文件改变时,u盘的文件是不会变化的。

from copy import deepcopy
list1 = ["张三", "李四", "王五", "赵六"]
list2 = deepcopy(list1)
​
print(id(list1))
print(id(list2))
​
list1[1] = "坤哥"
​
print(list1)
print(list2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有头发的小朋友

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值