• Python核心编程(第二版) 第四章习题答案


    4-1.Python对象。与所有Python对象有关的三个属性是什么?请简单的描述一下。
    答:与所有Python对象有关的三个属性是身份、类型、值。
    身份:每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数id()来得到。这个值可以被认为是该对象的内存地址。
    类型:对象的类型决定了该对象可以保存什么类型的值,可以进行什么样的操作,以及遵循什么规则。可以用内建函数type()来查看Python的类型。
    值:对象表示的数据项。
    4-2.类型。不可更改(immutable)指的是什么?Python的哪些类型是可更改(mutable)的,哪些不是?
    答:如果对象支持更新操作,那么它的值就可以改变,否则它的值也是只读的。对象的值是否可以更改被称为对象的可改变性。如果对象的值不可更改,那么称它不可更改。

    4-3.类型。哪些Python类型是按照顺序访问的,他们和映射类型的不同是什么?
    答:list,string和tuple类型是按照顺序访问的。
    4-4.type()。内建函数type()作用是什么?type()返回的对象是什么?
    答:type()的作用是返回一个对象的类型,而不局限于标准类型。
    4-5.str()和repr()。内建函数str()与repr()之间的不同是什么?哪一个等价于反引号(``)操作符?
    答:内建函数str()得到的字符串可读性好。而repr()函数得到的字符串通常可以用来重新获得该对象。repr()函数和``它们返回的是一个对象的“官方”字符串表示。print语句调用的是repr()函数.
    4-6.对象相等。你认为type(a) == type(b)和type(a) is type(b)之间的不同是什么?为什么会选者后者?函数isinstance()与这有什么关系?
    答:“==”比较的是值,is比较的是对象。isinstance()用来判断一个对象是否属于这个类。
    4-7.内建函数dir()。在第2章的几个练习中,我们用内建函数dir()做了几个实验,它接受一个对象,然后给出相应的属性。请对types模块做相同的实验。记下你熟悉的类型,包括你对这些类型的认识,然后记下你还不熟悉的类型。在学习Pythopn的过程中,你要逐步将“不熟悉”的类型变得“熟悉”起来。
    答:
    >>> import types
    >>> dir(types)
    ['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodType', 'ClassType', 'CodeType', 'ComplexType', 'DictProxyType', 'DictType', 'DictionaryType', 'EllipsisType', 'FileType', 'FloatType', 'FrameType', 'FunctionType', 'GeneratorType', 'GetSetDescriptorType', 'InstanceType', 'IntType', 'LambdaType', 'ListType', 'LongType', 'MemberDescriptorType', 'MethodType', 'ModuleType', 'NoneType', 'NotImplementedType', 'ObjectType', 'SliceType', 'StringType', 'StringTypes', 'TracebackType', 'TupleType', 'TypeType', 'UnboundMethodType', 'UnicodeType', 'XRangeType', '__builtins__', '__doc__', '__file__', '__name__', '__package__']

    4-8.列表和元组。列表和元组的相同点是什么?不同点是什么?
    答:1 列表是可变的,而元组不是不可变的。
    2 列表和元组都是按顺序访问的。

    4-9.实践,给定以下赋值:
    a = 10
    b = 10
    c = 100
    d = 100
    e = 10.0
    f = 10.0
    请问下面各表达式的输出是什么?为什么?
    a) a is b
    (b) c is d
    (c) e is f

    答:
    >>> a=10
    >>> b=10
    >>> c=100
    >>> d=100
    >>> e=10.0
    >>> f=10.0
    >>> a is b
    True
    >>> c is d
    True
    >>> e is f
    False
    >>>

  • 相关阅读:
    Python基础---------数据类型
    Linux----------Rabbitmq消息队列
    常用消息中间件对比
    Linux-------------kafaka基础
    Linux------------zookeeper基础
    CentOS使用chkconfig增加开机服务提示service xxx does not support chkconfig的问题解决
    Linux-------------MongoDB基础
    Web Service
    AutoResetEvent和ManualResetEvent(多线程操作)
    方法的可变参数 params
  • 原文地址:https://www.cnblogs.com/tmyyss/p/3756122.html
Copyright © 2020-2023  润新知