Python模块——标准库\开源模块\自定义模块

一、定义

        模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是.py结尾的python文件。

        包:用来从逻辑上组织模块,本质就是一个目录(必须有一个__init__.py文件)

二、导入方法

        import module_name

        import module1_name,module2_name

        from module import *(不建议使用)

        from module import 方法名 as 别名

三、import本质(路径搜索和搜索路径)

        import 模块名

        第一种直接import 模块名的,当需要使用模块里的类、函数、变量等时,需要模块名字+类/函数/变量,表示你要使用这个模块下的类、函数、变量等,需要指定一下。实际上这种方式相当于把  “模块名.py”  这个文件中的所有类、函数、常量、变量全都解释一遍赋值给  “模块名”。

        from 模块名 import xxx (xxx可以是类,函数,常量等等)

        第二种from 模块名 import xxx,这种直接使用模块下的某一个类,这样一次只能导入一个特定的类/函数/变量等,如果还想使用这个模块下的其他类,就得继续这样导入。实际上这种方式相当于直接把 “xxx” 这部分代码拿到当前文件下执行。

        导入模块的本质就是把python文件解释一遍,导入包的本质就是执行该包下的__init__.py文件。

四、导入优化

import 模块名
def test1():
    模块名.方法名() //第一次调用
    print("in the test1")

def test2():
    模块名.方法名() //第二次调用
    print("in the test2")

//上述两段函数重复调用同一个方法,效率降低,如何优化?
from 模块名 import 方法名
def test1():
    方法名() 
    print("in the test1")

def test2():
    方法名() 
    print("in the test2")

五、模块的分类

       1.标准库

       a、time & datetime 模块

       时间相关的操作,时间有三种表示方式:

       ①时间戳               1970年1月1日之后的秒,即:time.time()

       ②格式化的字符串    2019-11-11 11:11,    即:time.strftime('%Y-%m-%d')

       ③结构化时间          元组包含了:年、日、星期等... time.struct_time    即:time.localtime()

       b、random 模块

import random
print(random.random()) #[0,1)之间的随机浮点数
print(random.randint(1,5)) #random.randint(a,b)用于生成[a,b]范围内的整数
print(random.randrange(1,5)) #random.randrange(start,stop,step),用于按指定步长获得一个[start,stop)a范围内随机数
print(random.choice('hello')) #random.choice()从序列中获取一个随机元素,这里可以是列表、元组、字符串
print(random.sample([1,2,3,4,5],3)) #random.sample(sequence,k),从指定序列中随机获取指定长度的片段

#随机整数
pr
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值