• 铁乐学python_day10_作业


    1、继续整理函数相关知识点,写博客。
    
    2、写函数,接收n个数字,求这些参数数字的和。(动态传参)
    def sum_n(*args):
        sum = 0
        for i in args:
            sum += i
        return sum
    
    # 验证:
    print(sum_n(5,6,8,9,45))
    
    73
    
    3、读代码,回答:代码中,打印出来的值a,b,c分别是什么?为什么?
    a=10
    b=20
    def test5(a,b):
        print(a,b)
    c = test5(b,a)
    print(c)
    
    答:a为20,b为10,c为None。在执行test5函数时,转输进去的位置参数是b,a,也就是20对应test5(a,b)中的a,10对应b,所以打印20和10,而test5():函数没有设置return返回值,所以返回的是None,c被赋值None。
    
    4、读代码,回答:代码中,打印出来的值a,b,c分别是什么?为什么?
    a=10
    b=20
    def test5(a,b):
    	a=3
    	b=5
        print(a,b)
    c = test5(b,a)
    print(c)
    
    答:3、5、None。函数体中重新对a和b赋值了。
    
    相关面试题(先从纸上写好答案,然后在运行):
    1、有函数定义如下:
    def calc(a,b,c,d=1,e=2):
    return (a+b)*(c-d)+e
    请分别写出下列标号代码的输出结果,如果出错请写出Error。
    print(calc(1,2,3,4,5))_____ print(calc(1,2))____print(calc(e=4,c=5,a=2,b=3))___ 
    print(calc(1,2,3))_____ print(calc(1,2,3,e=4))____print(calc(1,2,3,d=5,4))_____
    
    答:2、Error、24、8、10、Error
    注意最后一题会报错
    SyntaxError: positional argument follows keyword argument
    因为它的关键字传参没有排列在位置参数的后面,(后面接了一个4)
    
    2、下面代码打印的结果分别是_________,________,________.
    def extendList(val,list=[]):
        list.append(val)
        return list
    
    list1 = extendList(10)
    list2 = extendList(123,[])
    list3 = extendList('a')
    
    print('list1=%s'%list1)
    print('list2=%s'%list2)
    print('list3=%s'%list3)
    
    结果是
    list1=[10, 'a']
    list2=[123]
    list3=[10, 'a']
    
    意想不到,后来模拟了一下过程想明白了,list列表是属于可变类型,直接就可以引用。
    

    5、继续写昨天的作业。
    默写:1、形参的接收顺序。
    【位置参数,*args,默认参数,**kargs】

    2、什么是命名空间,什么是全局名称空间,什么是局部名称空间,什么是内置名称空间。
    答:用来存放变量与值对应关系的内存空间叫做命名空间,存放全局变量的叫全局名称空间,函数执行时开辟的临时命名空间叫局部名称空间,存储python所有内置函数的变量与值的命名空间叫内置名称空间。

    3、什么是全局作用域,什么是局部作用域。

    4、名称空间的加载顺序,取值顺序。
    5、解释一下什么是global,什么是nonlocal。

  • 相关阅读:
    3、tensorflow变量运算,数学运算
    2、tensorflow 变量的初始化
    1、tensorflow 框架理解
    tensorflow 打印全部变量的一种方法
    0、tensorflow学习开始
    tensorflow 小记——如何对张量做任意行求和,得到新tensor(一种方法:列表生成式)
    SASRec 实践
    jupyterlab 增加新内核的方法ipykernel
    vivo 全球商城:架构演进之路
    jenkins安装 git免密ssh配置
  • 原文地址:https://www.cnblogs.com/tielemao/p/8698608.html
Copyright © 2020-2023  润新知