Python大数据复习题

Python大数据复习题

第一章

  1. 创建一个Python脚本,命名为test1.py,实现以下功能。
  1. 定义一个元组t1=(1,2,‘py’,‘matlab’)和一个空列表list1。
  2. 以while循环的方式,用append()函数依次向list1中添加t1中的元素。
  3. 定义一个空字典,命名为dict1。
  4. 定义一个嵌套列表Li=[‘k’,[3,4,5],(1,2,6),18,50],采用for循环的方式,用setdefault()函数依次将Li中的元素添加到dict1中,其中Li元素对应的键依次为a、b、c、d、e。

答案:

t1=(1,2,'R','py','Matlab')
list1=[]
i = 0
while i<len(t1):
    list1.append(t1[i])
    i=i+1
print(list1)
dict1={}
Li=['k',[3,4,5],(1,2,6),18,50]
Li2=['a','b','c','d','e']
for index,value in zip(Li2,Li):
    dict1.setdefault(index,value)
print(dict1)

  1. 创建一个Python脚本,命名为test2.py,实现以下功能。
  1. 定义一个函数,用于计算圆柱体的表面积、体积,函数名为comput,输入参数为底半径(r)、高(h),返回值为表面积(S)、体积(V),返回多值的函数,可以用元组来表示。
  2. 调用定义的函数comput(),计算底半径(r)=10、高(h)=11的圆柱体表面积和体积,并输出结果。

答案:

def comput(r,h):
    s=r**2*3.14*2+2*r*3.14*h
    v=r**2*3.14*h
    return s,v
print(comput(10,11))

第二章

  1. 创建一个Python脚本,命名为test1.py,实现以下功能。
  1. 定义一个列表list1=[1,2,4,6,7,8],将其转化为数组N1。
  2. 定义一个元组tup1=(1,2,3,4,5,6,),将其转化为数组N2。
  3. 利用内置函数,定义一个1行6列元素全为1的数组N3。
  4. 将N1、N2、N3垂直连接,形成一个3行6列的二维数组N4。
  5. 将N4保存为Python二进制数据文件(npy格式)。

答案:

import numpy as np
list1 = [1,2,3,4,6,8]
N1 = np.array(list1)

tup1 = (1,2,3,4,5,6)
N2 = np.array(tup1)

N3 = [[1]*6 for i in range(1)]
N3 = np.ones([1,6])

N4 = np.vstack((N1,N2,N3))
print(N4)
np.save('N4',N4
)

  1. 创建一个Python脚本,命名为test2.py,实现以下功能。
  1. 加载练习一中生成的Python二进制数据文件,获得数组N4。
  2. 提取N4第1行中的第2个、第4个元素,第3行中的第1个、第5个元素,组成一个新的二维数组N5。
  3. 将N5与练习1中的N1进行水平合并,生成一个新的二维数组N6。

答案:

import numpy as np
N4 = np.load('N4.npy')
N5 = np.array([N4[0][1],N4[0][3],N4[2][0],N4[2][4]])
N1 = np.array(N4[0])
print(N5)
print(N1)
N6 = np.hstack((N5,N1))    #数组的水平连接
print(N6)

  1. 创建一个Python脚本,命名为test3.py,实现以下功能。
  1. 生成两个2×2矩阵,并计算矩阵的乘积。
  2. 求矩阵 A=3-1-13的特征值和特征向量。
  3. 设有矩A=41187    14-2,试对其进行奇异分解。
  4. 设有行列式D= 468469568 ,对其转置行列式DT,并计算D和DT

答案:

import numpy as np

arr = np.matrix([[1,4],[1,6]])

arr1 = np.matrix([[2,4],[3,6]])

a = arr*arr1

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值