python自定义函数

一. 自定义一个和sum函数功能一样的函数

      方法一: 遍历每一个数相加返回结果(少量的数相加可以, 数多了就麻烦了,不太好用)

def my_sum(num):
    n = 0
    for i in num:
        n += i
    return n


num = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  # 元组可省略括号, 传列表也一样可以
print(num, "的和是:", my_sum(num))

      方法二: 上面的思路用传递函数的参数代替变量赋值, 同样可以算, 可惜也不能简化输入量

def sum_me(*x):
    n = 0
    for i in x:
        n += i
    return n


print(sum_me(1, 2, 3, 4, 5, 6, 7, 8, 9, 10))

  方法三: 这个方法不用输入那么多数字了

思路:第一次循环返回n, 第二次返回n-1,一直到1,最后相加. 用上了递归.
def my_sum(n):
    if n == 1:
        return 1
    return n + my_sum(n - 1)  


num = int(input("请输入数字n:"))
print("1到%d的和是:" % num, my_sum(num))

  

二. 自定义操作文件函数

def 操作文件(文件名, 模式, 内容=None):
    with open(文件名 ,mode=模式, encoding='utf-8' ) as f: 
        if 模式 == 'r':
            data = f.read()  # 以行的方式, 读文件
            return data
        elif 模式 == 'w':
            f.write(内容)
            return '写入成功'
        elif 模式 == 'a':
            f.write(内容)
            return '添加成功'

  

三.  给定一组数字a,b,c……,请计算a2+b2+c2+ 数字长度不固定

def 平方和函数(*args): # 很多数 (元组里面有很多数)
    n = 0
    for i in args:# i 是元组中的元素
        n += i**2
    return n

  

 

posted @ 2018-10-12 15:45  楚天荆  阅读(1075)  评论(0编辑  收藏  举报