还剩6页未读,继续阅读
文本内容:
numpy试题库及答案
一、单项选择题(共30题,每题1分)numpy中用于创建数组的核心数据结构是?()A.ndarray B.array C.matrix D.list以下哪个函数不能用于创建指定长度的数组?()A.np.arange5B.np.linspace0,10,5C.np.zeros5D.np.array[1,2,3,4]若有数组a=np.array[1,2,3,4,5],执行a[1:4]的结果是?()A.[1,2,3]B.[2,3,4]C.[1,2,3,4]D.[2,3,4,5]numpy数组的维度可以通过哪个属性获取?()A.shape B.size C.ndim D.dtype以下哪个不是numpy的统计函数?()A.np.mean B.np.sum C.np.max D.np.add执行np.array[[1,2],[3,4]]+np.array[[5,6],[7,8]]的结果是?()A.array[[6,8],[10,12]]B.array[[1,2],[3,4],[5,6],[7,8]]C.array[[1,2,3,4],[5,6,7,8]]D.array[[6,8],[10,12]]若要将数组a的形状从2,3转换为3,2,应使用哪个方法?()A.a.reshape3,2B.a.resize3,2C.a.transpose D.a.swapaxes0,1numpy中实现数组元素筛选的常用方法是?()A.列表推导式B.布尔索引C.np.where D.a.filter以下哪个函数可以生成随机数组?()第1页共8页A.np.random.rand B.np.random.normal C.np.random.randint D.以上都是数组a=np.array[1,3,5,7,9],a[::2]的结果是?()A.[1,3,5,7,9]B.[1,5,9]C.[3,7]D.[1,3,5]执行np.array[1,2,3]*2的结果是?()A.[1,2,3,1,2,3]B.[2,4,6]C.[1,2,3]D.报错数组a=np.array[[1,2],[3,4],[5,6]],a[:,1]表示?()A.第一行元素B.第二列元素C.所有行的第一列元素D.所有列的第二行元素以下哪个不是numpy数组的基本运算?()A.加减乘除B.矩阵乘法C.逻辑判断D.线性回归执行np.zeros2,3,dtype=int创建的数组元素类型是?()A.float B.int C.complex D.objectnp.arange1,10,3生成的数组是?()A.[1,4,7]B.[1,4,7,10]C.[1,3,5,7,9]D.[1,2,3,4,5,6,7,8,9]数组a=np.array[1,2,3,4],a[-2:]的结果是?()A.[3,4]B.[2,3]C.[1,2]D.
[4]以下哪个函数用于计算数组的均值?()A.np.average B.np.mean C.np.median D.np.stdnumpy中broadcast(广播)机制的作用是?()A.将不同形状的数组转换为相同形状B.复制数组元素C.合并数组D.排序数组执行np.array[1,2,3]+np.array
[4]的结果是?()A.[5,6,7]B.[1,2,3,4]C.[4,2,3]D.报错第2页共8页数组a=np.array[[1,2],[3,4]],a[0,1]表示?()A.第0行第1列元素B.第1行第0列元素C.第0行所有元素D.第1列所有元素以下哪个方法可以对数组进行排序?()A.a.sort B.np.sorta C.a.argsort D.以上都是np.linspace0,10,5生成的数组是?()A.[0,2,4,6,8,10]B.[0,
2.5,5,
7.5,10]C.[0,5,10]D.[0,1,2,3,4]数组a=np.array[1,3,5,7],np.loga的作用是?()A.计算自然对数B.计算指数C.计算平方根D.计算平方以下哪个函数用于计算数组的方差?()A.np.var B.np.std C.np.var D.以上都是执行a=np.array[1,2,3];b=np.array[4,5,6];np.dota,b的结果是?()A.[4,10,18]B.32C.[1,2,3,4,5,6]D.报错numpy数组与Python列表相比,最显著的优势是?()A.可存储不同类型数据B.支持向量化运算C.可嵌套使用D.索引方式简单数组a=np.array[[1,2,3],[4,5,6]],a[1,2]的值是?()A.3B.6C.4D.5以下哪个函数用于创建单位矩阵?()A.np.eye3B.np.identity3C.np.diag[1,1,1]D.以上都是执行a=np.array[1,2,3,4,5];a[1:4]=0后,a的值是?()A.[1,0,0,0,5]B.[1,0,0,0,0]C.[0,0,0,4,5]D.[1,2,3,4,5]第3页共8页numpy中ndarray的dtype属性表示?()A.数组维度B.数组形状C.数据类型D.数组大小
二、多项选择题(共20题,每题2分)以下哪些方法可以创建numpy数组?()A.np.array[1,2,3]B.np.arange0,10,2C.np.zeros2,3D.listrange5关于numpy数组的shape属性,以下说法正确的是?()A.表示数组的维度B.返回一个元组C.可通过a.shape=2,3修改D.与a.ndim含义相同以下哪些是numpy的统计函数?()A.np.mean B.np.median C.np.max D.np.min数组a=np.array[[1,2,3],[4,5,6]],以下哪些操作会改变数组形状?()A.a.reshape3,2B.a.resize3,2C.a.T D.a.swapaxes0,1以下关于numpy广播机制的说法,正确的是?()A.允许不同形状的数组进行运算B.需要满足维度对齐规则C.会自动扩展维度D.会创建新数组以下哪些函数属于numpy的随机数生成函数?()A.np.random.rand B.np.random.randn C.np.random.randint0,10,size=5D.np.random.shuffle数组a=np.array[1,3,5,7,9],以下哪些索引方式可以获取元素3?()A.a
[1]B.a[-4]C.a[0:2]
[0]D.a[
[1]]关于numpy的向量化运算,以下说法正确的是?()第4页共8页A.避免了Python循环,提高效率B.代码更简洁C.支持广播D.只能对数值型数组使用以下哪些方法可以实现数组的拼接?()A.np.concatenate B.np.vstack C.np.hstack D.np.dstack数组a=np.array[1,2,3,4,5],以下哪些操作会得到[2,3,4]?()A.a[1:4]B.a[1:-1]C.a[0:3][1:4]D.a[1:4]以下哪些是numpy数组的基本运算?()A.加减乘除B.矩阵乘法C.逻辑与或非D.比较运算执行np.array[[1,2],[3,4]]*np.array[[5,6],[7,8]]的结果可能是?()A.[[5,12],[21,32]]B.[[5,6],[21,32]]C.array[[5,12],[21,32]]D.array[[5,6],[7,8]]以下哪些函数可以处理缺失值?()A.np.isnan B.np.nanmean C.np.nanmax D.np.nanmin关于np.where函数,以下说法正确的是?()A.用于条件筛选B.语法为np.wherecondition,x,y C.当x,y省略时返回满足条件的索引D.只能处理一维数组数组a=np.array[1,2,3,4,5],以下哪些操作会得到[2,4,6,8,10]?()A.a*2B.np.multiplya,2C.a+a D.a+2以下哪些是numpy的线性代数函数?()A.np.dot B.np.cross C.np.linalg.inv D.np.linalg.det第5页共8页数组a=np.array[[1,2],[3,4],[5,6]],以下哪些切片操作会得到正确结果?()A.a[0:2,0:1]→[
[1],
[3]]B.a[0,:]→[1,2]C.a[:,1]→[2,4,6]D.a[1:3,:2]→[[3,4],[5,6]]以下哪些是numpy数组的属性?()A.ndim B.size C.dtype D.itemsize执行a=np.array[1,2,3];b=np.array[4,5,6];np.column_stacka,b的结果可能是?()A.array[[1,4],[2,5],[3,6]]B.array[[1,2,3],[4,5,6]]C.array[[1,4],[2,5],[3,6]]D.array[[1,2,3,4,5,6]]以下关于numpy数组与Python列表的区别,说法正确的是?()A.数组所有元素类型必须一致B.数组支持向量化运算C.数组是连续内存存储,效率更高D.数组有更多内置函数
三、判断题(共20题,每题1分)numpy数组的shape属性返回的是一个列表(×)np.array[1,2,3]创建的是一维数组(√)a=np.array[[1,2],[3,4]];a.shape=4,1后,a的形状为4,1(√)numpy数组的索引从1开始(×)np.arange1,10,2生成的数组包含10(×)向量化运算可以提高numpy的计算效率(√)np.zeros5创建的数组元素类型是int(×)a=np.array[1,2,3];a[::2]的结果是[1,3](√)np.dota,b和a@b在一维数组时结果相同(√)数组a=np.array[1,2,3,4];a[1:4]=0会改变原数组(√)第6页共8页np.linspace0,10,5生成的数组包含0和10(√)numpy的random模块中,rand函数生成的是[0,1的随机数(√)a=np.array[1,2,3,4];a
[0]=a
[1]会导致数组a变为[1,2,3,4](×)矩阵乘法可以使用np.dot或@运算符(√)np.wherea b,a,b表示当a b时取a,否则取b(√)数组a=np.array[1,2,3,4];a
[2]=a会导致数组类型变为object(√)np.eye3创建的是3阶单位矩阵(√)数组的flatten方法会返回一个副本,而ravel返回的是视图(√)np.stda计算的是数组的标准差(√)a=np.array[1,2,3];b=np.array[4,5,6];np.concatenatea,b会得到[1,2,3,4,5,6](√)
四、简答题(共2题,每题5分)简述numpy中ndarray的核心特点,并说明其相比Python列表的优势答案ndarray是numpy的核心数组结构,特点包括同构数据类型、多维结构、连续内存存储、支持向量化运算相比Python列表,优势在于向量化运算效率更高(避免循环)、支持广播机制、内置数学函数丰富、内存占用更小什么是numpy的广播机制?简述其基本规则,并举例说明答案广播机制是numpy中不同形状数组进行运算时自动对齐的机制基本规则从后往前比较维度,维度为1的数组会扩展以匹配其他数组维度,且扩展时会复制元素例如a=第7页共8页np.array[[1,2,3],[4,5,6]];b=np.array
[10];a+b,b会被广播为[[10,10,10],[10,10,10]],实现数组与标量的元素相加附参考答案
一、单项选择题1-5:A D B CD6-10:D AB D B11-15:B BDBA16-20:A DA A A21-25:DBAAB26-30:B BD AC
二、多项选择题1:ABC2:ABC3:ABCD4:ABCD5:ABCD6:ABC7:ABD8:ABC9:ABCD10:ABD11:ABD12:AC13:ABCD14:ABC15:ABC16:ABCD17:ABC18:ABCD19:AC20:ABCD
三、判断题1-5:×√√××6-10:√×√√√11-15:√√×√√16-20:√√√√√
四、简答题答案见上文答案见上文文档说明本文库包含numpy基础到进阶的典型试题,覆盖数组创建、运算、索引、统计、线性代数等核心知识点,适合初学者巩固基础通过练习可快速掌握numpy的常用功能和操作技巧第8页共8页。
个人认证
优秀文档
获得点赞 0