python基础3

python基础1
Python基础2

1 异常、模块与包

异常就是程序运行的过程中出现了错误。

捕获异常

try:
	可能发生错误的代码
except:
	如果出现异常执行的代码
""""""
try:
	可能要发生异常的语句
except 异常 as 别名:
	出现异常的准备手段
else:
	未出现异常时应做的事情
finally:
	不管出不出现异常都会做的事情
# 基本捕获语法
try:
    f = open("D:/abc.txt", "r", encoding="UTF-8")
except:
    print("出现异常了,因为文件不存在,我将open的模式,改为w模式去打开")
    f = open("D:/abc.txt", "w", encoding="UTF-8")

# 捕获指定的异常
try:
    print(name)
    # 1 / 0
except NameError as e:
    print("出现了变量未定义的异常")
    print(e)
# 捕获多个异常
try:
    # 1 / 0
    print(name)
except (NameError, ZeroDivisionError) as e:
    print("出现了变量未定义 或者 除以0的异常错误")
# 未正确设置捕获异常类型,将无法捕获异常

# 捕获所有异常
try:
    f = open("D:/123.txt", "r", encoding="UTF-8")
except Exception as e:
    print("出现异常了")
    f = open("D:/123.txt", "w", encoding="UTF-8")
else:
    print("好高兴,没有异常。")
finally:
    print("我是finally,有没有异常我都要执行")
    f.close()

异常传递

在这里插入图片描述

模块

Python 模块(Module),是一个 Python 文件,以.py 结尾。
模块能定义函数,类和变量,模块里也能包含可执行的代码。

在这里插入图片描述

# 使用import导入time模块使用sleep功能(函数)
import time     # 导入Python内置的time模块(time.py这个代码文件)
print("你好")
time.sleep(5)   # 通过. 就可以使用模块内部的全部功能(类、函数、变量)
print("我好")

# 使用from导入time的sleep功能(函数)
from time import sleep
print("你好")
sleep(5)
print("我好")

# 使用 * 导入time模块的全部功能
from time import *      # *表示全部的意思
print("你好")
sleep(5)
print("我好")

# 使用as给特定功能加上别名
import time as t
print("你好")
t.sleep(5)
print("我好")

from time import sleep as sl
print("你好")
sl(5)
print("我好")

在这里插入图片描述

注意事项:当导入多个模块的时候,且模块内有同名功能.当调用这个同名功能的时候,调用到的是后面导入的模块的功能

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

注意:新建包后,包内部会自动创建init·py文件,这个文件控制着包的导入行为
在这里插入图片描述

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名称

2 综合案例

json是一种轻量级的数据交互格式,采用完全独立于编程语言的文本格式来存储和表示数据(就是字符串)

通过json.dumps(data)方法把python数据转化为了json数据data = json. dumps (data)如果有中文可以带上 ensure_ascii = False参数来确保中文正常转换

通过json.loads(data)方法把josn数据转化为了python列表或字典data = json. loads (data)

"""
演示JSON数据和Python字典的相互转换
"""
import json
# 准备列表,列表内每一个元素都是字典,将其转换为JSON
data = [{
   
   "name": "张大山", "age": 11}, {
   
   "name": "王大锤", "age": 13}, {
   
   "name": "赵小虎", "age": 16}]
json_str = json.dumps(data, ensure_ascii=False)
print(type(json_str))
print(json_str)
# 准备字典,将字典转换为JSON
d = {
   
   "name":"周杰轮", "addr":"台北"}
json_str = json.dumps(d, ensure_ascii=False)
print(type(json_str))
print(json_str)
# 将JSON字符串转换为Python数据类型[{k: v, k: v}, {k: v, k: v}]
s = '[{"name": "张大山", "age": 11}, {"name": "王大锤", "age": 13}, {"name": "赵小虎", "age": 16}]'
l = json.loads(s)
print(type(l)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值