python笔记--函数、异常

1. 函数

1.1 函数创建和调用

python笔记--函数、异常_第1张图片

def add(a, b):
    return a + b

f1 = add(10, 100)
f2 = add(b = 20, a = 200)
print(f1)
print(f2)

1.2 函数的返回值

函数返回多个值时,结果为元组

def str():
    a = 'hello'
    b = 'world'
    c = 'python'
    return a, b, c

print(str())

python笔记--函数、异常_第2张图片

1.3 函数的参数定义

  • 函数定义时,给形参设置默认值,只有与默认值不符的时候才需要传递实参
def f(a = 10, b = 10):
    print(a, b)

f(100, 1100)
f(100)
f()

python笔记--函数、异常_第3张图片
个数可变的位置参数

# 个数可变的位置参数只能有一个
def fun(*args):
    print(args)

fun(10)
fun(10, 100, 1000)

python笔记--函数、异常_第4张图片

个数可变的关键字形参

# 个数可变的关键字形参只能有一个
def fun(**args):
    print(args)

fun(a = 10)
fun(a = 10, b = 100, c = 1000)

python笔记--函数、异常_第5张图片

2. 异常

2.1 try-except

try:
    a = int(input('请输入第一个整数:'))
    b = int(input('请输入第二个整数:'))
    result = a / b
    print(result)
except ZeroDivisionError:
    print('除数不能为0!')

2.2 try-except…else

  • 如果try块中没有抛出异常,则执行else块,如果try块中抛出异常,则执行except块
try:
    a = int(input('请输入第一个整数:'))
    b = int(input('请输入第二个整数:'))
    result = a / b
    print(result)
except ZeroDivisionError:
    print('除数不能为0!')
else:
    print('计算完毕,没有异常出现!')

2.3 try-except…else…finally

  • finally块无论是否发生异常都会执行,能常用来释放try块中申请的资源
try:
    a = int(input('请输入第一个整数:'))
    b = int(input('请输入第二个整数:'))
    result = a / b
    print(result)
except ZeroDivisionError:
    print('除数不能为0!')
else:
    print('计算完毕,没有异常出现!')
finally:
    print('程序结束...')

2.4 常见异常类型

异常类型 说明
ZeroDivisionError 除零
IndexError 序列中没有此索引
KeyError 映射中没有这个键
NameError 未声明/初始化对象
SyntaxError Python语法错误
ValueError 传入无效的参数

你可能感兴趣的:(python,python,开发语言,学习)