VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • python-----模块【第一部分】-----

一.hashlib(md5)

1 import hashlib
2 obj = hashlib.md5('dsfd'.encode('utf-8'))
3 obj.update('123'.encode('utf-8'))
4 print(obj.hexdigest())

二.random

1.randint

复制代码
复制代码
 1 #一般配合chr / ord 使用,生成随机验证码
 2 #chr:给定一个int型,把int型转换为ascii码对照表中的字母
 3 #和chr作用相反
 4 
 5 #产生一个四位的随机验证码
 6 import random
 7 lis = []
 8 for i in range(4):
 9     v1 = random.randint(65,90)
10     v2 = chr(v1)
11     lis.append(v2)
12 result = ''.join(lis)
13 print(result)
复制代码

 

复制代码

三.getpass

1 #在用户输入密码时,影藏密码,在cmd中运行有效
2 import getpass
3 val = getpass.getpass('请输入你的密码:')
4 print(val)

四.os

1.os.path.exists()

复制代码
1 #判断一个文件路径是否存在
2 import os
3 file_name = 'D:\\python\\code'
4 if not os.path.exists(file_name):
5     print('文件路径不存在')#可以创建
6 else:
7     print('文件路径已经存在')
复制代码

2.os.path.dirname()

1 #返回一个路径的上级一目录
2 import os
3 file_name = 'D:\\python\\code'
4 result = os.path.dirname(file_name)
5 print(result)

3.os.path.abspath()

1 #获取一个文件的绝对路径
2 import os
3 file_name = 'x.py'
4 result = os.path.abspath(file_name)
5 print(result)

4.os.listdir()

1 #获取当前目录下第一层的所有文件,返回一个列表
2 import os
3 file_name = 'D:\\code'
4 result = os.listdir(file_name)
5 print(result)

5.os.walk() / os.path.join()

复制代码
1 #os.walk  获取当前目录下所有层级的文件
2 #os.path.join  可以把两个或多个路径拼接起来
3 import os
4 file_name = 'D:\\code\\day'
5 result = os.walk(file_name)
6 for a,b,c in result:
7     for i in c:
8         val = os.path.join(a,i)
9         print(val)
复制代码

6.os.makedirs()

1 #创建新文件夹
2 import os
3 os.makedirs('text')

7.os.stat('目标文件').st_size

1 #获取文件大小
2 import os
3 file_size = os.stat('455698.mp4').st_size
4 print(file_size)

8.os.rename()

1 #对文件进行重命名
2 os.rename('db','bb')

五.sys

1.argv

复制代码
 1 #获取解释器命令行路径
 2 import sys
 3 print(sys.argv)
 4 ###############
 5 #接受两个参数,一个参数为文件名,一个为内容,把内容写到文件中
 6 #D:\python\python37 D:\code\x.py  文件名  内容
 7 import sys
 8 data = sys.argv #[ D:\code\x.py , 文件名 , 内容]
 9 file_name = data[1]
10 file_data = data[2]
11 with open(file_name, mode = 'w', encoding = 'utf-8') as f:
12     f.write(file_data)
复制代码

2.sys.path / sys.path.append()

复制代码
1 #默认python导入模块时,去sys.path路径里面挨个查找
2 #也可以添加查找路径  sys.path.append()
3 import sys
4 data = sys.path
5 for item in data:
6     print(item)
7 ######添加查找路径
8 import sys
9 os.path.append('D:\xxxx\xxx')
复制代码

六.json

#json是一个特殊的字符串   【python中元祖和集合不能json】

1.dumps / dump

复制代码
1 #序列化  把python中的数据类型序列化为字符串
2 data = [11,'dd','liyang',{'k1':1,'k2':2}]
3 import json
4 result = json.dumps(data)
5 print(result,type(result))
#注意 列表或字典中如有中文,序列化时保留中文显示
2 data = [11,'dd','liyang',{'k1':1,'k2':'张杰'}]
3 import json
4 result = json.dumps(data,ensure_ascii = False)
5 print(result,type(result))
 
复制代码
1 #dump 可以把序列化后的数据写入文件中
2 import json
3 data = [11,22,{'k1':1}]
4 f = open('D:\\code\\x.txt', mode = 'w', encoding = 'utf-8')
5 json.dump(data,f)
6 f.close
7 print('写入成功')
复制代码

 


复制代码

2.loads / load

复制代码
1 #反序列化 把一个字符串转换为python中的数据类型
2 import json
3 v2 = '["k2",123]'
4 result = json.loads(v2)
5 print(result,type(result))
1 #load 读取文件中被序列化的字符串,并进行反序列化
2 import json
3 f = open('D:\\code\\day\\x.txt', mode = 'r', encoding = 'utf-8')
4 print(json.load(f))
5 f.close

 

复制代码

3.pickle

复制代码
#json,优点:所有语言通用;缺点:只能序列化基本的数据类型 list/dict/int...
#pickle,优点:python中所有的东西都能被他序列化(socket对象);缺点:序列化的内容#只有python认识。\
"""
import pickle
v = {1,2,3,4}
val = pickle.dumps(v)
print(val)
data = pickle.loads(val)
print(data,type(data))
"""

"""
def f1():
    print('f1')

v1 = pickle.dumps(f1)
print(v1)
v2 = pickle.loads(v1)
v2()
"""
复制代码

 

 七.shutil

1.rmtree

1 #删除文件目录
2 import shutil
3 shutil.rmtree('text')

 

2.move

1 #重命名
2 import shutil
3 shutil.move('ddd','text')

 

3.make_archive

1 #压缩文件
2 import shutil
3 shutil.make_archive('压缩后的文件名', 'zip', '压缩路径')

 

4.unpack_archive

1 #解压缩文件
2 import shutil
3 shutil.unpack('要解压压缩件名', extract_dir=r, '要解压到哪里', format = 'zip')

 

5.##################示例

复制代码
 1 import os
 2 import shutil
 3 from datetime import datetime
 4 ctime = datetime.now().strftime('%Y-%m-%d-%H-%M-%S')
 5 
 6 # 1.压缩 text文件夹 zip
 7 # 2.放到到 code 目录(默认不存在)
 8 # 3.将文件解压到D:\x1目录中。
 9 if not os.path.exists('codes'):
10     os.makedirs('codes')
11 shutil.make_archive(os.path.join('codes','times'), 'zip', 'D:\\code\\day')
12 file_name = os.path.join('codes','times')+'.zip'
13 shutil.unpack_archive(file_name, 'D:\\x1',format = 'zip')
复制代码


相关教程