第二十一天包和异常处理
1.json的格式化功能:
import json data={‘username‘:[‘梨花‘,‘二愣子‘],‘sex‘:‘male‘,‘age‘:15} json_dic2=json.dumps(data,sort_keys=True,indent=2,separators=(‘,‘,‘:‘),ensure_ascii=False) print(json_dic2) 结果为 { "age":15, "sex":"male", "username":[ "梨花", "二愣子" ] }
注;ensure_ascii 当它为True 的时候,所有的非ascii码显示为\uxxxx序列,只需要在调用dump时将ensure_ascii设置成为False既可以显示正常的中文文字
separators 分隔符,实际上是(item_separator,dic_separator)的一个元组,默认就是(‘,‘,‘:‘),这表示dictionary内keys之间用逗号隔开,而keys和values之间用冒号隔开。
sor_keys:将数据根据keys的值进行排序
2.包的讲解:
2.1创建多个文件(包就是文件里含有__init__.py文件就是)(把解决同一类问题的模块放在同一个文件夹中成为包)(如果创建的文件已经存在,在进行编译会报错)
import os os.makedirs(‘glance/api‘) os.makedirs(‘glance/cmd‘) os.makedirs(‘glance/db‘) l=[] l.append(open(‘glance/__init__.py‘,‘w‘)) l.append(open(‘glance/api/__init__.py‘,‘w‘)) l.append(open(‘glance/api/policy.py‘,‘w‘)) l.append(open(‘glance/api/versions.py‘,‘w‘)) l.append(open(‘glance/cmd/__init__.py‘,‘w‘)) l.append(open(‘glance/cmd/manage.py‘,‘w‘)) l.append(open(‘glance/db/models.py‘,‘w‘)) map(lambda f:f.close() ,l)
结果为
3.在python中创建包的过程:
4.关于包相关的调用可以使用import 和from ...import 两种,但是无论使用哪一种,无论在什么位置,再导入时必须遵循凡是导入时带点的,点的左边必须是一个包。
import glance.api.policy as t t.get() 结果为 from policy.py
from glance.api import policy policy.get() 结果为 from policy.py