Python基础:函数

Python基础:函数

一、调用

def info_print():
    print('Hello Python')
info_print()

二、返回值

def sum_num(a, b):
    return a ** b
c = sum_num(2, 10)
print(c)

三、定义函数说明文档

def sum_num(a, b):
    '''
    sum_num
    :param a: num1
    :param b: num2
    :return: num1 ** num2
    '''
    return a ** b
c = sum_num(2, 10)
print(c)
help(sum_num)

四、函数嵌套调用

def sum_num(a, b):
    return a ** b

def add_num(a, b):
    return sum_num(a, b) + sum_num(b, a)

print(add_num(2, 3))

五、变量的作用域

a = 100
b = 100

def testA():
    print(f'testA(): a = {a}, b = {b}')

def testB():
    global a
    a = 200
    b = 200
    print(f'testB(): a = {a}, b = {b}')

testA()  # testA(): a = 100, b = 100
testB()  # testB(): a = 200, b = 200
print(f'global: a = {a}, b = {b}')  # global: a = 200, b = 100

六、多返回值

def return_num():
    return 1, 2, 3

print(return_num())  # (1, 2, 3)

七、函数参数

1、位置参数

def user_info(name, age, gen):
    print(f'You name:{name}, Your age:{age}, Your gender:{gen}')

user_info('Tom', 23, 'M')

2、关键字参数

def user_info(name, age, gen):
    print(f'You name:{name}, Your age:{age}, Your gender:{gen}')

user_info(gen='M', age=23, name='TOM')

3、缺省参数

def user_info(name, age, gen='M'):
    print(f'You name:{name}, Your age:{age}, Your gender:{gen}')

user_info(age=23, name='TOM')
user_info(gen='W', age=23, name='TOM')

4、不定长参数

包裹位置传递

def user_info_loc(*args):
    print(args)

user_info_loc(1)
user_info_loc(1, 2)
user_info_loc(1, 2, 3)

包裹关键字传递

def user_info_key(**kwargs):
    print(kwargs)

user_info_key(name='TOM', age=23)

八、拆包和交换变量值

拆包

def ret_num():
    return 1, 2

num1, num2 = ret_num()
print(num1, num2)
dict1 = {'name': 'TOM', 'age': 23}
item1, item2 = dict1.items()
print(item1)
print(item2)

交换变量值

a, b = 1, 2
a, b = b, a
print(a, b)

九、引用

a = 1
b = a
print(f'a={a}, ida={id(a)}; b={b}, idb={id(b)}')
# a=1, ida=1855712368; b=1, idb=1855712368
b = 2
print(f'a={a}, ida={id(a)}; b={b}, idb={id(b)}')
# a=1, ida=1855712368; b=2, idb=1855712400
a = 3
print(f'a={a}, ida={id(a)}; b={b}, idb={id(b)}')
# a=3, ida=1855712432; b=2, idb=1855712400

十、引用做实参

def test(a):
    print(f'a={a}, ida={id(a)}')
    # a=100, ida=1855715536
    a += a
    print(f'a={a}, ida={id(a)}')
    # a=200, ida=1855718736

b = 100
print(f'b={b}, idb={id(b)}')
# b=100, idb=1855715536
test(b)
print(f'b={b}, idb={id(b)}')
# b=100, idb=1855715536

十一、可变与不可变数据类型

可变类型:列表、字典、集合
不可变类型:整型、浮点型、字符串、元组

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值