python学习-函数

 一、概念

当函数作为参数被调用时不需要加括号

例如:map(upper),upper 是一个函数

1、定义

def 函数名 (参数列表):#注意参数个数,冒号

函数体

[return返回值列表]

2、调用

通过函数名称调用函数

对函数的形式参数赋予实际的赋值

1)位置传参,传参顺序不能乱

2)关键字传参

3)默认值传参,形式参数可以直接设定默认值,没有实参时默认执行

3、函数的返回值

函数的结果需要再另一个函数中使用时,就需要返回值

使用return关键字返回

return可以出现在函数的任意位置,用于结束函数

函数的返回值可以是一个值,或多个值,如果返回的值是多个,那个返回的值是一个元组

4、变量的作用域

当全局变量和局部变量名称相同时,局部变量优先级高

global:声明全局变量,假如在函数内部声明也算全局变量

匿名函数 lambda,函数体只有一句话的时候可以用。格式: lambda 形参:函数体

5、递归函数

在一个函数的函数体内调用该函数本身

包含两部分:递归调用、递归终止条件

二、代码练习

1、累加求和

def get_sum(num):
    sum=0
    for i in range(1,num+1):
        sum+=i
    print(f'1-{num}之间的和为{sum}')


get_sum(10)
get_sum(100)
get_sum(40)

 结果:

2、递归方法实现阶乘

def fun(n):
    if n==1:
        return 1
    else:
        return n*fun(n-1)

print(fun(5))

结果 

3、计算斐波拉契数

def fun(n):
    if n==1 or n==2:
        return 1
    else:
        return fun(n-1)+fun(n-2)
for i in range(1,10):
    print(fun(i),end='\t')
print()

运行结果:

4、输入一个带数字、大小写字母的字符串,将大小写转换,数字不变

def zh(str):
    lst=[]
    for i in str:
        if 'A'<=i<='Z':
            lst.append(chr(ord(i)+32))
        elif 'a'<=i<='z':
            lst.append(chr(ord(i)-32))
        else:
            lst.append(i)
    return ''.join(lst)#难点,这里写成了str

str1=input('请输入一个带大小写字母的字符串:')
newstr=zh(str1)
print(newstr)

 结果:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值