3.30python学习笔记
作者:互联网
OS模块
#查看当前路径及路径下的文件
1.os.getcwd() :查看当前所在路径
2.os.listdir(path) :列举path目录下的所有文件。返回的是列表类型
#绝对路径
1.os.path.abspath(path) :返回当前文件位置的绝对路径。
2.os.path.realpath(path) :返回当前文件位置的绝对路径。
#路径拼接
os.path.join(path1, path2, ...) :将入参的path进行组合,若其中有绝对路径,则之前的path将被删除
#创建目录(文件夹)
os.mkdir(r'aaa') 使用相对路径 在当前执行文件所在的路径下创建一个aaa文件夹
os.mkdir(r'bbb/ccc') mkdir只能创建单级目录
#删除目录(文件夹)
os.rmdir(r'aaa') 可以删除单级目录
os.rmdir(r'bbb') 只能删空的单级目录
#删除文件、重命名文件
os.remove(r'a.txt')
os.rename(r'a.txt', r'aaa.txt')
#判断文件是否存在
print(os.path.exists(r'ATM')) True 判断所给的路径是否存在
print(os.path.isdir(r'ATM')) True 判断路径是否是一个文件夹
print(os.path.isfile(r'ATM')) False 判断路径是否是一个文件
#获取文件大小(字节 bytes)
print(os.path.getsize(r'ATM')) 128bytes
print(os.path.getsize(r'a.txt')) 14bytes
sys模块
- sys模块是与python解释器交互的一个接口
1.列举当前执行文件所在的sys.path
print(sys.path)
2.获取解释器版本信息
print(sys.version)
3.获取平台信息
print(sys.platform)
4.自定义命令行操作
print(sys.argv)
5.退出程序
print(sys.exit(n))
json 模块
- 就是一个序列化模块 主要用于跨语言传输数据(相当于一个翻译器)
序列化的目的:
1、以某种存储形式使自定义对象持久化;
2、将对象从一个地方传递到另一个地方。
3、使程序更具维护性。
json格式数据的具体特征:
1、据上图可知:数据基于网络传输肯定是二进制格式
2、python中只有字符串可以转成bytes类型(编码encode())
3、由上述推论可知 json格式数据 本质应该属于字符串类型
4、双引号是json格式数据独有的标志符号
import json
d = {'username':'jason','pwd':123}
res = json.dumps(d)
print(res, type(res)) # json格式字符串
encode_str = res.encode('utf8')
'''假设将该字符串基于网络发给了另外一个python程序'''
# 先将bytes类型转换成字符串
json_str = encode_str.decode('utf8')
print(json_str,type(json_str))
res1 = json.loads(json_str)
print(res1, type(res1)) # {'username': 'jason', 'pwd': 123} <class 'dict'>
"""
json.dumps() 序列化
将python数据类型转换成json格式字符串
json.loads() 反序列化
将json格式字符串转换成对应的数据类型
"""
# 如果不能理解跨语言传输的作用 那么权且理解下面的操作即可
d = {'username': 'jason', 'pwd': 123}
# 将上述字典写入文件
with open(r'a.txt','w',encoding='utf8') as f:
# f.write(d)
# f.write(str(d))
# f.write(json.dumps(d))
json.dump(d, f)
# 将文件内容获取出来
with open(r'a.txt','r',encoding='utf8') as f:
# data = f.read()
# res = json.loads(data)
# print(res, type(res))
data = json.load(f)
print(data, type(data))
"""
如果json模块需要配合文件一起使用的话 有固定的方法
json.dump()
将其他数据类型直接写入文件(自动转json格式字符串)
json.load()
将文件数据直接转成对应的数据类型(自动反序列化)
"""
# 强调:不是所有的数据类型都支持序列化
"""
+-------------------+---------------+
| Python | JSON |
+===================+===============+
| dict | object |
+-------------------+---------------+
| list, tuple | array |
+-------------------+---------------+
| str | string |
+-------------------+---------------+
| int, float | number |
+-------------------+---------------+
| True | true |
+-------------------+---------------+
| False | false |
+-------------------+---------------+
| None | null |
+-------------------+---------------+
"""
标签:str,python,+-------------------+---------------+,笔记,json,3.30,print,path,os 来源: https://www.cnblogs.com/zq0408/p/16158011.html