0
点赞
收藏
分享

微信扫一扫

4.27包和模块

做个橙梦 2022-04-29 阅读 69
python

1模块

1.python中一个py文件就是一个模块

2.怎么在一个模块中使用另外一个模块的内容

前提:被使用的模块的模块名(py文件的文件名)必须符合变量名的要求(是标识符,不是关键字)

能被使用的内容:所有的全局变量

怎么用:使用别的模块中的内容前,必须先导入模块

3.导入模块

1)import 模块名

导入指定模块;导入后可以通过’模块名.xxx’的方式使用这个模块所有的全局变量

import test

print(test.a)

print(test.func())

2)form 模块名 import 变量名1,变量名2```` - 导入指定模块,导入后可以直接使用指定变量

3)form 模块名 import * - 最后用*作为功能名,可以导入模块中所有功能

4)模块重命名

import 模块名 as 新模块名 - 直接导入指定模块并且对模块进行重命名,重命名后需要新模块名来代替原模块名使用模块

import test as ts

5)变量重命名

from 模块名 import 变量名1 as 新变量名1, 变量名2 as 新变量名2`````

2.阻止导入

因为导入模块的时候默认会执行模块中所有代码,就会导入有些完全没有必要在导入的时候执行的代码,如果希望导入模块的时候某些代码可以不执行,就需要去阻止代码在被导入的时候执行.

if   __name__ == '__main__':

	

阻止方法:将不需要被执行的代码放到main对应的if条件就语句里面

1.包

包就是存放__init__.py文件的文件夹

导入方法:

方法一

import   包名	-	直接导入包,导入后可以通过包.xxx的方式__init__.py中所有的内容

方法二

import 包名.模块名 - 导入指定包中指定模块,导入后可以通过’包名’.模块名.xxx来使用

概率

import 包名.模块名 as 模块名

方法三

from 包名 import 模块名1,模块名2``` - 导入通过’模块名.xxx’来使用对应的变量或者函数

方法四

from 包名 import * - 导入包中init.py中所有的变量

方法五

form 包.模块名 import 变量1,变量2``` - 导入包中某个模块的指定变量

1关联导入

在init 里预先载入

2创建快捷键

from package1.abc.test6 import abs

3创建通用的函数或者变量

def open_file():
	print('开打文件')

数学模块

import math,cmath

math - 普通数字对应的数学模块

cmath - 复数对应的数学模块

1)补充复数 - python支持复数

格式: a + bj

1浮点数转整数

1)int(浮点数) - 直接保留整数部分

int(1.23) - # 1

2)math.ceil 向大取整

math.ceil(1.23) # 2,向大取整

math.ceil(-1.23) #-1,向小取整

3)math.floor 向小取整

math.floor(1.23) #1,向小取整

math.floor(-1.23) #-2,向小取整

4)round(浮点数) - 四舍五入(x.5的时候前面整数是奇数进位,偶数摄取)

print(round(1.99)) #2

print(round(1.29)) #1

求绝对值

1)abs(数字) - 绝对值,返回本身数据类型

print(abs(-23)) #

2)fabs(数字) - 返回浮点数;类型

随机模块

1创建随机函数: randint() - 产生[a,b]的随机整数

print(random.randint(1,2))

2创建随机小数: random() - 产生[0,1)

print(random.random() * 100)

3在指定的等差数列中随机获取一个数:randrange(N)(M,N)(M,N,step)

4.洗牌: shuffle(列表)(必须是有序序列) - 将列表中的元素顺序随机打乱

5抽牌:

import random

1)choice(序列) - 从指定序列中随机获取一个元素

2)choices(序列,k=x抽取x个元素,weights=[])(有放回抽取) - 从指定序列中随机获取多个元素

参数k=x表示每次取x个元素

参数weights=[ 与序列元素数相同,按比例分配概率]表示分配的概率

5)sample(序列,k=抽取x个元素,counts = 权重列表)

没有默认值k,必须赋值k=x

time模块

from time import *

1)time( ) 获取时间,返回的是时间戳

时间戳 : 通过保存一个时间到1970年1月1日0(格林时间)的时间差

ti = time( )

print(ti)

localtime() - 获取本地当前时间,返回的是结构体的时间

localtime(时间戳) - 获取时间戳的结构体时间

time.struct_time(tm_year=2022, tm_mon=4, tm_mday=27, tm_hour=17, tm_min=57, tm_sec=5, tm_wday=2, tm_yday=117, tm_isdst=0)

tm_wday(0-6,星期日期从0开始计算,要加一)

举报

相关推荐

0 条评论