python矩陣對角線
❶ python求一個n*n矩陣對角線元素之和,n由控制台輸入,數據隨機產生。
n = int(inport())
sum = 0
for i in range(len(n)):
sum += n[i][i]
大概上就是這樣
❷ python裡面的對角矩陣,解釋一下為什麼用M
>>> M=[[1,2,3],[4,5,6],[7,8,9]]
>>> diag=[M[i][i]for i in [0,1,2]]
>>> diag
[1,5,9]
N大的數組是用0到N-1個下標來指向這些數的.你程序里的for i in
[0,1,2]是將i賦值為0,1,2.M[i][i]則是選取M二維數組中相應下標的數,因為所有的數組都是0到N-1,所以3*3的數組,對角線就是[0][0],[1][1],和[2][2]
❸ MATLAB和Python中,怎麼把矩陣A和B放在一起變成一個對角矩陣
用MATLAB把矩陣A和B放在一起變成一個對角矩陣,如將A=[1 2;3 4], B = [1 2 3;4 5 6;7 8 9], 變成C=[A 0; 0 B]的形式。可以來處理:
1、用size函數分別求出矩陣A和B的大小
2、建立(m1+m2,n1+n2)大小的零矩陣
3、用多個雙重循環語句(對於本例用二個)來完成C對角矩陣。
❹ python裡面的對角矩陣,解釋一下為什麼用M[i][i],這個具體是個什麼意思
N大的數組是用0到N-1個下標來指向這些數的。你程序里的for i in [0,1,2]是將i賦值為0,1,2。M[i][i]則是選取M二維數組中相應下標的數,因為所有的數組都是0到N-1,所以3*3的數組,對角線就是[0][0],[1][1],和[2][2]
❺ python 輸入5*5矩陣a,完成下列要求
7.13 (3) 7.14(4)不太明白什麼意思7.13:var a:array[1..5,1..5] of longint;var l1,l2,l3,l4:integer;beginfor l1:=1 to 5 dofor l2:=1 to 5 do read(a[l1,l2]); for l1:=1 to 5 dobeginwriteln;for l2:=1 to 5 do write(a[l1,l2],' ');end; for l1:=1 to 5 dobeginl2:=a[2,l1];a[2,l1]:=a[5,l1];a[5,l1]:=l2;end;for l1:=1 to 5 dobeginwriteln;for l2:=1 to 5 do write(a[l1,l2],' ');end;end. 7.14:var a:array[1..6,1..6] of longint;var l1,l2,l3,l4,absmax,x,y:longint;beginfor l1:=1 to 6 dofor l2:=1 to 6 do read(a[l1,l2]); for l1:=1 to 6 dobeginwriteln;for l2:=1 to 6 do write(a[l1,l2],' ');end; for l1:=1 to 6 dofor l2:=(l1+1) to 6 do a[l1,l2]:=a[l1,l2]+1;for l1:=1 to 6 dofor l2:=1 to (l1-1) do a[l1,l2]:=a[l1,l2]-1;for l1:=1 to 6 dobeginwriteln;for l2:=1 to 6 do write(a[l1,l2],' ');end; absmax:=abs(a[1,1]);x:=1;y:=1;for l1:=1 to 6 dofor l2:=1 to 6 do if a[l1,l2]>absmax then beginabsmax:=a[l1,l2];x:=l1;y:=l2;end;write(absmax,' ',x,' ',y); end. 9.2var a,b:array[1..20] of longint;var l1,l2,l3:longint;beginfor l1:=1 to 20 dobeginread(a[l1]);b[l1]:=l1;end; for l1:=1 to 20 dofor l2:=19 downto l1 dobeginif (a[l2+1]) 作業幫用戶 2017-06-25 舉報
❻ 你好,請問python 怎麼求矩陣對角線上面數的和謝謝你
matrix=[[1,2,3,4],
[10,20,30,40],
[100,200,300,400],
[1000,2000,3000,4000]]
sum=0
foriinrange(4):
forjinrange(i,4):
sum+=matrix[i][j]
❼ python 怎麼實現矩陣運算
1.numpy的導入和使用
data1=mat(zeros((
)))
#創建一個3*3的零矩陣,矩陣這里zeros函數的參數是一個tuple類型(3,3)
data2=mat(ones((
)))
#創建一個2*4的1矩陣,默認是浮點型的數據,如果需要時int類型,可以使用dtype=int
data3=mat(random.rand(
))
#這里的random模塊使用的是numpy中的random模塊,random.rand(2,2)創建的是一個二維數組,需要將其轉換成#matrix
data4=mat(random.randint(
10
,size=(
)))
#生成一個3*3的0-10之間的隨機整數矩陣,如果需要指定下界則可以多加一個參數
data5=mat(random.randint(
,size=(
))
#產生一個2-8之間的隨機整數矩陣
data6=mat(eye(
,dtype=
int
))
#產生一個2*2的對角矩陣
a1=[
]; a2=mat(diag(a1))
#生成一個對角線為1、2、3的對角矩陣
❽ python 提取下三角矩陣里的元素,並按大小排序
說下我的思路:
按行讀取文件,把行按空格分割成列表。從第三行起,每行取值的范圍為列表的[ 第2行:行數-1]。
因為列表是從0開始的,xrange取值是左閉右開。所以是line[1:行數]。
最後再把這個列表拍個序就行了。
不會使用numby,所以就用一般的列表代替了。可以使用numby改寫下,性能可以提高不少。
def get_trangle(filepath):
resultList = []
with open(filepath, 'r') as foo:
for index, line in enumerate(foo.readlines()):
line_list = line.split()
resultList.extend([float(line_list[i])
for i in xrange(1, index) if index > 1])
print sorted(resultList)
❾ python 怎麼求矩陣對角線上面數的和
屬於numpy庫的方法import numpya=numpy.zeros((5,5),dtype='int32')a.shape輸出為(5,5)可以用a.shape[0]看行數(也就是第一個維度)P.S.可以初始化高維矩陣就是a可以不止二維
❿ 如何用Python語言計算四行四列矩陣的主對角線和副對角線元素之和
#假設矩陣是A
sum1, sum2 = 0, 0
N = len(A)
for i in range(N):
sum1 += A[i][i]
sum2 += A[N - 1 - i][i]