GESP Python 6级 2023.09
近年来,线上授课变得普遍,很多有助于改善教学效果的设备也逐渐流⾏,其中包括⽐较常⽤的⼿写板,那 么它属于哪类设备?
输⼊
输出
控制
记录
以下关于Python语⾔的描述,错误的是
Python提供了常⽤的数据结构,并⽀持⾯向对象编程
Python是解释型语⾔
Python是⼀种⾼级程序设计语⾔
Python程序在运⾏前需要预先编译
以下不属于⾯向对象程序设计语⾔的是
C++
Python
Java
C
下⾯有关Python类定义的说法,错误的是
Python类实例化时,先执⾏new()和init()
Python内置函数bool()对于⾃定义类有效,必须在新定义类中定义bool()函数
Python⾃定义类不能适⽤于for-in循环
Python⾃定义类可⽤getitem()魔术⽅法定义⽅括号运算符
有关下⾯Python代码的说法,错误的是
class strReverse:
def __init__(self, strData = ""):
self.Data = strData
def __repr__(self):
return self.Data[::-1]
print(strReverse("ABC"))
最后⼀⾏代码将输出CBA
最后⼀⾏代码将不能输出CBA,因为没有定义print()函数
第3⾏代码的Data是strReverse类的数据属性
最后⼀⾏代码将⾃动执⾏init()函数
有关下⾯Python代码的说法,正确的是
class Num:
def __init__(self, val):
self.Value = val
def __add__(self, other):
return self.Value + other.Value
def add(self, other):
return self.Value + other.Value
a = Num(10)
print(a + Num(20), Num(20).add(a), a.add(Num(20)))
print(a)
在倒数第2⾏代码中, a + Num(20) 将执⾏正确,⽽ Num(20).add(a) 将导致错误
由于类Num中没有定义加号运算符,所以倒数第2⾏代码中的 a + Num(20) 被执⾏时将导致错误
如果将倒数第2⾏代码中的 a.add(num(20)) 修改为 Num(20).add(a) 将导致错误,因为 Num(20) 不是⼀个 对象,⽽a是类Num的对象
倒数第1⾏代码 print(a) 将被正确执⾏,虽然没有定义相关成员函数,或者称之为⽅法
有关下⾯Python代码的说法,正确的是
class manyData:
def __init__(self, lstData):
self._data = lstData
def push(self, val):
self._data.append(val)
return self
def pop(self):
popVal = self._data[-1]
self._data.pop()
return popVal
def __len__(self):
return len(self._data)
myData = manyData([1, 2, 3])
myData.push(100)
print(len(myData))
print(myData.peek())
print(myData.pop())
manyData类可⽤于构造队列(queue)数据结构
在上⾯代码环境,代码 myData.__data.append(10) 可以增加10到 myData.__data 之中
len()是Python内置函数,不适⽤于上⾯代码环境中的manyData
异常处理可以⽤于⾃定义类,因此manyData类的pop()函数执⾏可可以增加异常处理代码,否则可能导致异常
有关下⾯Python代码的说法,错误的是
class moreData:
def __init__(self, lstData):
self.data = lstData
def push(self, val):
self._data.append(val)
return self
def pop(self):
popVal = self.data[0]
self._data.pop(0)
return popVal
def __len__(self):
return len(self._data)
myData = moreData([1, 2, 3])
myData.push(11).push(12).push(13)
print(myData.pop())
moreData类可⽤于构造队列(queue)数据结构
代码倒数第2⾏连续push()⽤法将导致错误
moreData可以认为是list类型的适配器,裁剪了list功能
__data可以认为是moreData类的私有成员,只能在类内访问
某内容仅会出现ABCDEFG,其对应的出现概率为0.40、0.30、0.15、0.05、0.04、0.03、0.03,如下图所⽰。 按照哈夫曼编码规则,假设B的编码为11,则D的编码为

10010
10011
10111
10001
下⾯有关格雷码的说法,错误的是
在格雷码中,任意两个相邻的代码只有⼀位⼆进制数不同
格雷码是⼀种唯⼀性编码
在格雷码中,最⼤数和最⼩数只有⼀位⼆进制数不同
格雷码是⼀种可靠性编码
