1、矩阵构造numpy,求维数ndim,求行列数shape
(a) numpy 构造矩阵
import numpy as np ##引入构造矩阵库
arr1 = np.array([1,2,3,4,5,6] ) #向量一维
arr2 = np.array([[1,2,3],[4,5,6]]) #矩阵二维
arr3 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) #矩阵三维
print(arr1.ndim,arr2.ndim,arr3.ndim) # 打印矩阵维度
(b) ndim 求矩阵维数
import numpy as np ##引入构造矩阵库
arr1 = np.array([1,2,3,4,5,6] ) #向量一维
arr2 = np.array([[1,2,3],[4,5,6]]) #矩阵二维
arr3 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) #矩阵三维
print(arr1.ndim,arr2.ndim,arr3.ndim)
打印结果为1 2 3
(c) shape 求矩阵行列数
import numpy as np ##引入构造矩阵库
arr1 = np.array([1,2,3,4,5,6] ) #向量一维
arr2 = np.array([[1,2,3],[4,5,6]]) #矩阵二维
arr3 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) #矩阵三维
print(arr1.shape,arr2.shape,arr3.shape)
print(arr1.shape[0]) #一维矩阵,“0”输出列数
print(arr2.shape[0],arr2.shape[1]) #二维矩阵,“0”输出行数,“1”输出列数
print(arr3.shape[0],arr3.shape[1],arr3.shape[2])
打印结果为
(6,) (2, 3) (2, 2, 3)
6
2 3
2 2 3
2、raise 异常报错
(a)情况一
try:
for i in range(3):
for j in range(3):
if i == 2:
raise KeyboardInterrupt('故意设置')
print(i, j)
except KeyboardInterrupt as reason:
print('exit!' + str(reason))
(b)情况二
try:
10 / 1
except ZeroDivisionError:
raise ValueError('input error!')
print('ValueError!')
3、常用定义
(a)变量赋值
(1)构造空数组
dy = None # 与matlab不同,空数组可随意被赋值不同维度的矩阵
print(dy) # 打印结果为 “None”
(2)变量也可以被赋值文字
dy = False
print(dy) # 打印结果为 “False”
(b)运算法则
(1)整数与小数相乘有两种写法
a = 20 * .3048
b = 20 * 0.3048
print(a,b)
(2)四舍五入和取整
import numpy as np
b = np.round(2.9269) #调用numpy库的四舍五入round函数
c = int(np.round(2.9269)) # int为取整操作,取整之后小数点消失
d = int(2.9269)
print(b)
print(c)
print(d)
打印结果
3.0
3
2
(b)创建类,访问对象,调用对象
class Dog: # class Dog: 定义了一个名为 Dog 的类,冒号的下一行要缩进
def __init__(self, name, age): #__init__ 是类的构造方法,用于初始化对象的属性。
self.name = name # self 是一个指向对象本身的引用
self.age = age
def bark(self): # bark 是一个类的方法,可以通过对象调用
print(f"{self.name} says Woof!")
# 创建类的实例
dog1 = Dog("Buddy", 3)
dog2 = Dog("Charlie", 5)
# 访问对象属性
print(f"{dog1.name} is {dog1.age} years old.")
print(f"{dog2.name} is {dog2.age} years old.")
# 调用对象方法
dog1.bark()
dog2.bark()
(c)计算执行任务的时间
if __name__ == "__main__":
import time
tic = time.time()
# 在这里添加需要执行的任务
toc = time.time() # toc 表示结束时间
elapsed_time = toc - tic #elapsed_time 表示从开始到结束的经过时间
print(f"Elapsed time: 0.0602 seconds")
4、常见报错
(a)IndentationError: expected an indented block
有冒号的下一行要缩进,如
class Circle(object):
pi=3.14# 类属性
def __init__(self,r):
self.r=rcircle1=Circle(1)