鱼C论坛

 找回密码
 立即注册
查看: 22|回复: 0

[学习笔记] Python L18 Function函数的几个定义和概念 练习

[复制链接]
最佳答案
0 
发表于 前天 19:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 foxdai 于 2020-3-26 19:10 编辑

函数的几个定义和概念:
函数
0. 形参和实参,默认参数和关键字参数
形参即形式参数,是函数创建和定义过程中小括号里的参数;
实参即实际参数,是调用函数时候传递进去的参数(实际数据);
默认参数,函数定义时指定初始值,调用时如果不传递实际参数,则使用初始值;
关键字参数,是在函数调用时,通过参数名指定需要赋值的参数,避免因搞不清参数顺序而出错。

1.函数文档

2.关键字参数
是指函数在调用的时候,带上参数的名字去指定具体调用的是哪个参数,从而可以不用按照参数的顺序调用函数;使用关键字参数,可以有效避免因不小心搞乱参数的顺序导致的BUG出现。

def Daffodil(x):
    '''水仙花数的判断,1个3位数的每个数字的立方和与其相等,则其为水仙花数
    x为3位的数字,返回Bool值'''
    sum1 = 0
    for i in str(x):
        sum1 += int(i)**3
    if sum1 == x:
        return True
    else:
        return False

***几个自定义函数的练习
def Narcissus():
    '求水仙花,三位数的每个数字的立方和等于自己'
    sum1 = 0
    for i in range(100,1000):
        num0 = (i % 10)**3
        num00 = ((i // 10) % 10)**3
        num000 = ((i // 10) // 10)**3
        if i == num0 + num00 + num000:
            print(i,end='\t')
        else:
            continue

#老师的答案
def WaterF():
    for i in range(100,1000):
        sum1 = 0
        temp = i
        while temp:
            sum1 += (temp % 10)**3
            temp = temp // 10
        if sum1 == i:
            print(sum1,end="\t")

def SumxBase(a,b,c,d,e,f,base):
    '这个很垃圾,不知道如何使用参数,参数为【*param】'
    print((a+b+c+d+e+f)*base)

def mFun(*param, base=3):
    '多值之和*基数,基数缺省=3,默认参数的使用方法'
    result = 0
    for each in param:
        result += each

    result *= base
    print('结果是: ',result)

#2
def FindStr():
    str1 = input('请输入目标字符串:')
    sub1 = input('请输入子字符串:')
    print('子字符串在目标字符串中共出现 ',str1.count(sub1),' 次')
#这一题,老师怎么做的那么复杂,为什么不用str.count(sub)方法?
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐上一条 /1 下一条

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1

GMT+8, 2020-3-28 18:57

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表