python 刷题 time11.11

版权声明:此文章版权归呆呆所有,转发请注明出处! https://blog.csdn.net/zhangyu4863/article/details/83932361

一个段代码定义如下,下列调用结果正确的是?

def bar(multiple):
def foo(n):
return multiple ** n
return foo
正确答案: A 你的答案: A (正确)
bar(2)(3) == 8
bar(2)(3) == 6
bar(3)(2) == 8
bar(3)(2) == 6

解析
# -*- coding: utf-8 -*-


def bar(multiple):
    def foo(n):
        return multiple ** n
    return foo


print(bar(2)(3) == 8)

# result
True

What gets printed?()

print r"\nwoow"
正确答案: C 你的答案: C (正确)
new line then the string: woow
the text exactly like this: r"\nwoow"
the text like exactly like this: \nwoow
the letter r and then newline then the text: woow
the letter r then the text like this: nwoow

解析
>print(r"\nwoow")
\nwoow

有如下类定义,下列描述错误的是?

class A(object):
pass

class B(A):
pass

b = B()
正确答案: D 你的答案: D (正确)
isinstance(b, A) == True
isinstance(b, object) == True
issubclass(B, A) == True
issubclass(b, B) == True

解析
  • isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
  • isinstance() 与 type() 区别:
    • type() 不会认为子类是一种父类类型,不考虑继承关系。
    • isinstance() 会认为子类是一种父类类型,考虑继承关系。
  • 参数
    • object – 实例对象。
    • classinfo – 可以是直接或间接类名、基本类型或者由它们组成的元组。
  • 返回
    • 如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。

What gets printed?()

1
2
3
4
5
kvps = { ‘1’ : 1, ‘2’ : 2 }
theCopy = kvps.copy()
kvps[‘1’] = 5
sum = kvps[‘1’] + theCopy[‘1’]
print sum

正确答案: C 你的答案: C (正确)
1
2
6

解析
kvps = { '1' : 1, '2' : 2 }
theCopy = kvps.copy()
print(id(kvps), id(theCopy))

kvps['1'] = 5
print(id(kvps), id(theCopy))
print(kvps, theCopy)

sum = kvps['1'] + theCopy['1']
print(sum)

# result
2005641039664 2005641073144
2005641039664 2005641073144
{'1': 5, '2': 2} {'1': 1, '2': 2}
6

下面代码运行结果?

a = 1
try:
a += 1
except:
a += 1
else:
a += 1
finally:
a += 1
print a

正确答案: C 你的答案: C (正确)
2
3
4
5

解析
# -*- coding: utf-8 -*-


try:
    print('try')
except:
    print('except')
else:
    print('else')
finally:
    print('finally')


# output
# try
# else
# finally

try:
    1 != 1
except:
    print('except')
else:
    print('else')
finally:
    print('finally')

# output
# else
# finally

python my.py v1 v2 命令运行脚本,通过 from sys import argv如何获得v2的参数值?

正确答案: C 你的答案: A (错误)
argv[0]
argv[1]
argv[2]
argv[3]

解析

argv[0]:脚本自身路径
argv[1]:第一个参数
argv[2]:第二个参数

有一段python的编码程序如下:urllib.quote(line.decode(“gbk”).encode(“utf-16”)),请问经过该编码的字符串的解码顺序是( )

正确答案: D 你的答案: C (错误)
gbk utf16 url解码
gbk url解码 utf16
url解码 gbk utf16
url解码 utf16 gbk

有一段python的编码程序如下:urllib.quote(line.decode(“gbk”).encode(“utf-16”)),请问经过该编码的字符串的解码顺序是( )

正确答案: D 你的答案: C (错误)
gbk utf16 url解码
gbk url解码 utf16
url解码 gbk utf16
url解码 utf16 gbk

Python中函数是对象,描述正确的是?

正确答案: A B C D 你的答案: B (错误)
函数可以赋值给一个变量
函数可以作为元素添加到集合对象中
函数可以作为参数值传递给其它函数
函数可以当做函数的返回值

若 a = (1, 2, 3),下列哪些操作是合法的?

正确答案: A B D 你的答案: B D (错误)
a[1:-1]
a*3
a[2] = 4
list(a)

解析
>a = (1, 2, 3)
>print(a[1:-1])
(2,)
>print(a[-1])  # 截取倒数第一个元素
(3,)
>print(a[:-1])  # 从头截取到倒数第一个元素
(1, 2)
>print(a[1:])  # 从第一个截取到末尾
(2, 3)

__new__和__init__的区别,说法正确的是?

  • 正确答案: A B C D 你的答案: 空 (错误)
    • __new__是一个静态方法,而__init__是一个实例方法
    • __new__方法会返回一个创建的实例,而__init__什么都不返回
    • 只有在__new__返回一个cls的实例时,后面的__init__才能被调用
    • 当创建一个新实例时调用__new__,初始化一个实例时用__init__
解析

__init__是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值。
__new__是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例,是个静态方法。

即,__new__在__init__之前被调用,__new__的返回值(实例)将传递给__init__方法的第一个参数,然后__init__给这个实例设置一些参数。

下列哪种说法是错误的

正确答案: A 你的答案: A (正确)
除字典类型外,所有标准对象均可以用于布尔测试
空字符串的布尔值是False
空列表对象的布尔值是False
值为0的任何数字对象的布尔值是False

猜你喜欢

转载自blog.csdn.net/zhangyu4863/article/details/83932361