• [Python]小甲鱼Python视频第052课(像极客一样去思考)课后题及参考解答


    # -*- coding: utf-8 -*-
    """
    Created on Wed Mar 27 00:11:46 2019
    
    @author: fengs
    """
    
    """
    0. 请问以下代码会打印什么内容?
    
    >>> def func():
        pass
    >>> print(type(func()))
    
    
    A. <type 'function'>
    B. <type 'tuple'>
    C. <type 'NoneType'>
    D. <type 'type'>
    
    调用了func() 函数,返回了None,应该是选C.
    
    
    """
    
    
    
    """
    1. 请问以下代码会打印什么内容?
    >>> print(type(1J))
    
    
    A. <type 'unicode'>
    B. <type 'int'>
    C. <type 'str'>
    D. <type 'complex'>
    
    单位虚数表示方法,应该是D。
    """
    
    
    """
    2. 请问以下代码会打印什么内容?
    >>> print(type(lambda:None))
    A. <type 'NoneType'>
    B. <type 'function'>
    C. <type 'int'>
    D. <type 'tuple'>
    
    lambda表达式是函数对象,应该是B
    
    """
    
    """
    3. 请问以下代码会打印什么内容?
    >>> a = [1, 2, 3, "FishC", ('a', 'b', 'c'), [], None]
    >>> print(len(a))
    A. 13
    B. 7
    C. 6
    D. 5
    
    7个元素,答案是B
    """
    
    """
    4. 请问以下代码会打印什么内容?
    class A:
    def __init__(self, x):
        x = x + 1
            self.v1 = x
    
    class B(A):
        def __init__(self, x):
            x = x + 1
            self.v2 = x
    
    >>> b = B(8)
    >>> print("%d %d" % b.v1, b.v2)
    A. 9 10
    B. 9 9
    C. 10 10
    D. 抛出异常
    
    抛出异常(D).
        异常1: class A中有语法错误
        异常2: class B的构造函数中没有调用父类的构造函数v1不存在
        异常3: print % 后的匹配项应该是元组(需要匹配多个时),不能直接用逗号隔开 
    
    """
    
    class A:
        def __init__(self, x):
            x = x + 1
            self.v1 = x
    
    class B(A):
        def __init__(self, x):
            x = x + 1
            self.v2 = x
            super().__init__(x)
            
    b = B(8)
    print("%d %d" % (b.v1, b.v2))
    
    
    
    """
    5. 请问以下代码会打印什么内容?
    class A:
        def __init__(self, x):
            self.x = x
            x = 666
    
    >>> a = A()
    >>> a = A(888)
    >>> a.x
    A. 666
    B. 888
    C. None
    D. 抛出异常
    
    
    选D,在 a = A() 时就会出异常 关键字参数x没有默认值,若要考察a.x的输出,应该是B,构造函数中的x是局部变量,不是成员变量self.x
    
    
    
    """
    
    
    """
    6. 请问以下代码会打印什么内容?
    values = [1, 1, 2, 3, 5]
    nums = set(values)
    
    def checkit(num):
        if num in nums:
            return True
        else:
            return False
    
    for i in filter(checkit, values):
    print(i, end=' ')
    
    A. 1 2 3 5
    B. 1 1 2 3 5
    C. 1 2 3 4 3 2 1
    D. 抛出异常版权
    
    D 抛出异常,语法缩进错误,for后面的内容,若不考虑缩进问题,应该选 B
    
    """
    
    
    """
    7. 请问以下代码会打印什么内容?
    values = [1, 1, 2, 3, 5]
    def transform(num):
        return num ** 2
    
    for i in map(transform, values):
        print(i, end=' ')
        
    A. 1 1 4 9 25
    B. 1 1 2 3 5
    C. 0.5 0.5 1 1.5 2.5
    D. 2 2 4 6 10
    
    选 A..映射出来的结果是个列表,可以迭代打印出来
    """
    
    """
    8. 请问以下代码会打印什么内容?
    class A:
        def __init__(self, x):
            self.x = x
    
    a = A(100)
    a.__dict__['y'] = 50
    print(a.y + len(a.__dict__))
    A. 2
    B. 50
    C. 51
    D. 52
    选D, 50+2
    """
    
    """
    9. 请问以下代码会打印什么内容?
    class A:
        def __init__(self):
            pass
        def get(self):
            print(__name__)
     
    >>> a = A()
    >>> a.get()
    
    A. A
    B. a
    C. __main__
    D. _A__
    
    选C,当成独立代码来执行,当前模块名为 __main__
    """
    
    
    """
    10. 请问以下代码会打印什么内容?
    country_counter = {}
    
    def addone(country):
        if country in country_counter:
            country_counter[country] += 1
        else:
            country_counter[country] = 1
    
    addone('China')
    addone('Japan')
    addone('China')
    addone("American")
    
    print(len(country_counter))
    
    A. 0
    B. 1
    C. 2
    D. 3
    
    选D,相同的不会新建key
    """
    
    
    """
    11. 请问以下代码会打印什么内容?
    dict1 = {}
    dict1[1] = 1
    dict1['1'] = 2
    dict1[1.0] = 3
    
    result = 0
    for each in dict1:
        result += dict1[each]
    
    print(result)
    A. 2
    B. 3
    C. 5
    D. 6
    
    选 
    1.0和1是同一个,3覆盖1
    """
    
    
    """
    12. 请问以下代码会打印什么内容?
    def dostuff(param1, *param2):
        print type(param2)
    
    dostuff('apples', 'bananas', 'cherry', 'dates')
    
    
    A. <type 'int'>
    B. <type 'str'>
    C. <type 'tuple'>
    D. <type 'dict'>
    
    
    选C,成为元组,在python2下才能跑,python 3下需要括号
    
    """
    
    
    """
    13. 请问以下代码会打印什么内容?
    class A:
        def __init__(self, a, b, c):
            self.x = a + b + c
    
    a = A(1,2,3)
    b = getattr(a, 'x')
    setattr(a, 'x', b+1)
    print a.x
    A. 1
    B. 2
    C. 6
    D. 7
    
    选D,不过要注意语法 print(a.x)
    """
    
    
    """
    14. 请问以下代码会打印什么内容?
    list1 = [1, 2]
    list2 = [3, 4]
    
    dict1 = {'1':list1, '2':list2}
    dict2 = dict1.copy()
    
    dict1['1'][0] = 5
    
    result = dict1['1'][0] + dict2['1'][0]
    print(result)
    A. 5
    B. 6
    C. 8
    D. 10
    
    浅拷贝,只拷贝了根级对象,修改一个都要修改,输出10, 选D
    """
    
    
    """
    15. 请问以下代码会打印什么内容?
    import copy
    
    list1 = [1, 2]
    list2 = [3, 4]
    
    dict1 = {'1':list1, '2':list2}
    dict2 = copy.deepcopy(dict1)
    
    dict1['1'][0] = 5
    
    result = dict1['1'][0] + dict2['1'][0]
    print(result)
    A. 5
    B. 6
    C. 8
    D. 10
    
    选B,深拷贝,树结构全部拷贝一遍 5+1
    
    """
    

      

    ~不再更新,都不让我写公式,博客园太拉胯了
  • 相关阅读:
    第一节,Django+Xadmin打造上线标准的在线教育平台—创建用户app,在models.py文件生成3张表,用户表、验证码表、轮播图表
    Tensorflow 错误:Unknown command line flag 'f'
    Python 多线程总结
    Git 强制拉取覆盖本地所有文件
    Hive常用函数 傻瓜学习笔记 附完整示例
    Linux 删除指定大小(范围)的文件
    Python 操作 HBase —— Trift Trift2 Happybase 安装使用
    梯度消失 梯度爆炸 梯度偏置 梯度饱和 梯度死亡 文献收藏
    Embedding 文献收藏
    深度学习在CTR预估中的应用 文献收藏
  • 原文地址:https://www.cnblogs.com/alimy/p/10604949.html
Copyright © 2020-2023  润新知