10.11Python笔记-函数

在这个文档里面,列举了Python内置的大部分函数:https://docs.python.org/3/library/functions.html

【定义函数】要使用 def 语句,return 空 的时候输出返回值是none,函数调用是通过栈(stack)这种数据结构实现的

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

如果需要返回多个值,多个值之间使用逗号分隔即可 ,返回顺序和接受顺序对应

return C, S

C, S = data_of_square(16)
print('周长 = {}'.format(C)) # ==> 周长 = 64
print('面积 = {}'.format(S)) # ==> 面积 = 256

 也可以使用一个值存储函数返回的多值结果。打印的result,其实它是tuple类型,如果我们需要取出结果中的周长或者面积,使用对应位置的下标就可以获得对应的结果。

result = data_of_square(16)
print(result) # ==> (64, 256)
C = result[0]
S = result[1]
print('周长 = {}'.format(C)) # ==> 周长 = 64
print('面积 = {}'.format(S)) # ==> 面积 = 256

 【判断参数类型】isinstance()函数

isinstance(100, int) # ==> True
isinstance(100.0, int) # ==> False
isinstance('3.1415926', str) # ==> True

 

1.sum()函数接收一个list作为参数,并返回list所有元素之和。请计算 1*1 + 2*2 + 3*3 + ... + 100*100。

# Enter a code
num = 0
L = []
while num < 100:
    L.append(num*num)
    num = num + 1 
S = sum(L)
print(S)

2.请定义一个square_of_sum()函数,它接收一个list,返回list中每个元素平方的和。 

# Enter a code
def square_of_sum(L):
    result = 0
    for num in L:
        result = result + num * num
    return result
print(square_of_sum([1, 2, 3, 4, 5])) #直接传参数时不加名字
    #print(square_of_sum(L[1, 2, 3, 4, 5]))会报错

3.定义一个函数sub_sum(),这个函数接收一个列表作为参数,函数返回列表所有奇数项的和以及所有偶数项的和。

# coding=utf-8
def sub_sum(L):
    num = 0
    J = 0
    O = 0
    for ch in L:
        if num % 2 == 0:
            J = J + ch
        else:
            O = O + ch
        num = num + 1
    return J,O
print(sub_sum([1,2,3,4,5,6]))

 

4.请分别使用循环和递归的形式定义函数,求出1~100的和。

# coding=utf-8
#循环
num = 0
sum = 0
while num < 101:
    sum = sum + num 
    num = num + 1
print(sum)
#递归
def sum(a):
    if a == 1:
        return 1 
    else:
        return a + sum(a-1)
print(sum(100))

5.请实现函数func,当参数类型为list时,返回list中所有数字类型元素的和,当参数类型为tuple时,返回tuple中所有数字类型元素的乘积

def func(x):
    sum = 0
    cheng = 1
    if isinstance(x, list):
        for ch in x:
            sum = sum + ch
        return sum
    elif isinstance(x, tuple):
        for ch in x:
            cheng = cheng * ch
        return cheng
print(func([1,2,3,4]))
print(func((1,2,3,4)))

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值