最近在學隨機過程,中間要計算矩陣,矩陣相乘太麻煩了,所以想用編程實現,也順便練下手。 基本功能已經實現,但是只能自己在程序裡事先把數組輸進去,所以想問一下怎樣才可以通過input函數直接過去矩陣。
看了網上其他人的辦法,都是這樣的
輸入>>1 2 3 4 5
通過是 split(' ')
來獲取得到 ['1','2','3','4','5']
但是我想要的是這樣的的效果,這樣感覺美觀一些。
輸入>>[ [1,2,3],[1,2,3] ]
先謝謝啦
問題出自 segmentfault, by
一個比較 不安全 但馬上可以解決問題的辦法是:
matrix = input(">>")
matrix = eval(matrix)
print(matrix)
結果:
>>[ [1,2,3], [1,2,3] ]
[[1, 2, 3], [1, 2, 3]]
P.S. 可以考慮使用文件來輸入
例如:
matrix a
1 2 3
1 2 3
補充: 在 Python 中如果要使用現成的庫來處理矩陣,numpy 是個好選擇。