Python_函数的初识、函数的返回值、函数的参数

本文深入解析Python函数的基础概念,包括函数定义、返回值、参数类型及其使用方法,通过实例讲解函数如何提升代码效率。

1、函数的初识

  def关键字 空格 函数名(与变量名命名规则相同):英文冒号

  函数体

  执行函数:函数名+()

  函数是以功能为导向的。

 

def login():
    pass

 

def register():
    pass

 

1 def my_len():
2     l1 = [1, 2, 3, 1, 6, 9, 10]
3     count = 0
4     for i in l1:
5         count += 1
6 my_len()

  

2、函数的返回值

   return:

    1、函数中遇到 return 结束函数,下面代码不执行。

def login():
    print(111)
    print(222)
    return
    print(333)
login()

 

 

 

    2、将函数里面的值返回给函数的执行者(调用者)。

      第一种情况:

        只有return,返回None。

def login():
    a = 2
    b = 3
    print(111)
    print(a, b)
    return
print(login())

 

 

      第二种情况:

        return None

      第三种情况:

        return 单个值(返回的值与单个值的类型相同)

def login():
    a = 2
    b = 3
    return a
print(login(), type(login()))

 

 

def login():
    a = 2
    b = 3
    return [1, 2]
print(login(), type(login()))

 

 

def login():
    a = 2
    b = 3
    return [1, 2]
ret = login()
a, b = ret
print(a, b)

 

 

      第四种情况:

        return 多个值(以元组的形式返回给函数的调用者)

 

def login():
    a = 2
    b = 3
    return 1, 'alex', [1, 2], {'name': '老男孩'}
ret = login()
print(ret)

 

 

  什么是None?

  所有空集合、空列表、空字典...... ----------> None

 

def my_len():
    l1 = [1, 2, 3, 1, 6, 9, 100]
    count = 0
    for i in l1:
        count += 1
    return count
print(my_len())

 

 

3、函数的参数

  1、实参角度

    1、位置参数

      一一对应,形参实参数量相等

def my_len(a):  # a 形式参数,形参
    count = 0
    for i in a:
        count += 1
    return count
l1 = [1, 2, 3, 1, 6, 9, 100]
print(my_len(l1))

 

 

def my_len(a):  # a 形式参数,形参
    count = 0
    for i in a:
        count += 1
    return count
l1 = [1, 2, 3, 1, 6, 9, 100]
my_len(l1)
ret = my_len(l1)
print(ret)
print(my_len(l1))   # 实际参数,实参

 

 

def my_len(a):  # a 形式参数,形参
    count = 0
    for i in a:
        count += 1
    return count
s1 = 'fhdsjfdsfsadfgsd'
my_len(s1)
ret = my_len(s1)
print(ret)
print(my_len(s1))   # 实际参数,实参

 

 

def tes(a, b, c):
    print(111)
    print(a, b, c)
tes(22, 'alex', [11, 22, 33])

 

 

  三元运算:

x = 100
y = 99
if x > y:
    print(x)
else:
    print(y)

 

 

x = 100
y = 99
c = x if x > y else y
print(c)

 

 

def max(x, y): return x if x > y else y
print(max(3000, 200))

 

 

 

    2、关键字参数

      一一对应,实参形参数量相等,实参顺序可变。

def func(x, y):
    print(x, y)
func(y=3333, x=4)

 

 

    3、混合参数

      关键字参数必须在位置参数的后边。

def func(x, y, z):
    print(x, y, z)
func(111, 222, z=555)  # 混合传参 位置参数必须在前边

 

 

def func(x, y, z):
    print(x, y, z)
func(111, z=555, 222)

 

 

  2、形参角度

    1、位置参数

      一一对应,形参实参数量相等

def func2(y, x):
    print(x, y)
func2(1, 2)

 

 

    2、默认字参数

      默认参数必须在形参的位置参数后面。

      默认参数不传值则为默认值,传值则覆盖默认值。

def func2(y, x, z= 1000):
    print(x, y, z)
func2(1, 2, 3000)

 

 

def input_information(name, sex='男'):
    with open('information', encoding='utf-8', mode='a') as f1:
        f1.write('{}\t{}\n'.format(name,sex))


while True:
    msg = input('请输入用户的姓名,性别\Q或者q退出').strip()
    if msg.upper() == 'Q':
        break
    if ',' in msg:
        name1, sex1 = msg.split(',')
        input_information(name1, sex1)
    else:
        input_information(msg)

 

 

    3、动态参数

 

转载于:https://www.cnblogs.com/ZN-225/p/9587948.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值