自学python_18 模块

这部分之前有过了解,所以简单写写吧。

模块:把功能相近的类或者函数放到一个文件里。
好处:提高代码的复用性,可以在其他代码中导入,解决了问题冲突的问题。

导入模块:
1.import 模块名
模块名.变量
模块名.函数
模块名.类
2.from 模块名 import 变量/函数/类
在代码中可以直接使用不用加 模块名.
3.from 模块import *
导入该模块中的所有内容
但是如果想限制获取的内容可以在模块中使用__all__ = [ * 可以访问到的东西]
4.如果模块导入的时候会把模块所有的东西加载到内存中。如果在模块中调用了函数,函数也会被使用。
5.__name __:模块的名称,在本模块中执行的时候为__main __。作为外部的模块被引用时就为模块名。

包:
包是区别于文件夹的,包中全部都是py文件,比模块大了一级。
命名规范:字母数字下划线。
调用方式: from 包 import 模块
from 包.模块 import 函数
__ init __.py:一个包中有一个 __ init __,只要导入这个包中的任何内容都要执行。

from 包 import *:在init中没有定义__all __所有的都无法访问,定义了 __ all __ ,只有 __ all __ 中的可以访问。

循环导入: 两个块A,B。A中importB,B中importA。这就导致了两个模块里的内容都无法使用。
如何避免这种现象:
1.重新架构,成本大。
2.将A模块里import B 模块的语句放进使用A中使用B的函数里,这样就能保证正常导入。
3.把导入语句放到模块的最后。

sys模块:

import sys
print(sys.path)
'''
['C:\\Users\\PycharmProjects\\untitled3', 'C:\\Users\\PycharmProjects\\untitled3', 'C:\\Program Files\\JetBrains\\PyCharm 2019.3.3\\plugins\\python\\helpers\\pycharm_display'......]
'''

这里显示了寻找一个模块的步骤,从这个列表中依次寻找,可以对包点击右键选择mark选项,也以把它作为搜索的首选。

argv: 运行程序时传递的一个参数列表,默认是程序本身。

time 模块:

import time
t = time.time()
print(t)
# 1589461320.5290267
time.sleep(2)
t = time.time()
print(t)
# 1589461322.5292652

#时间转换成字符串
s = time.ctime(t)
print(s,"   ",type(s))
# Thu May 14 21:02:02 2020     <class 'str'>

#将时间转换成元组
t1 = time.localtime(t)
print(t1)
# time.struct_time(tm_year=2020, tm_mon=5, tm_mday=14, tm_hour=21, tm_min=2, tm_sec=2, tm_wday=3, tm_yday=135, tm_isdst=0)

#将元组时间转换成字符串
s = time.strftime("%Y - %m - %d  %H:%M:%S")
print(s)
# 2020 - 05 - 14  21:02:02

标准类库:
常用的print,input,str,dict…
chr:Unicode码转换成字符。
ord:字符或中文转换成Unicode码。

hashlib:
涉及到一些加密的东西。
md5,sha1,sha256 是不可解密的。
base64 是可以解密的。
长度越长算法越严谨。

import hashlib
msg = "pornhub"
md5 = hashlib.md5(msg.encode("utf-8"))
print(md5.hexdigest())   #转成16进制。
# 1451eff4384f083524051ee2696b49ac
sha1 = hashlib.sha1(msg.encode("utf-8"))
print(sha1.hexdigest())
# faae5288a8a0e9f986d9e496926beb55a7e9c041
sha256 = hashlib.sha256(msg.encode("utf-8"))
print(sha256.hexdigest())
# 4d9128c239659d26be113a172390894cde5f0718d2eec4e2186673b0e775f4e4

第三方库:

本地类库里没有的类库,可以用pip install命令安装到本地。
也可以再pycharm里面找setting选项,project右侧有+号,可以添加。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值