国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Python 中數組和數字相乘時的注意事項說明

瀏覽:8日期:2022-06-20 10:56:35
注意事項

[object] * n 的時候并沒有復制n-1個object,而是增加了n-1個對object的引用。

例子說明

目標:生成一個10*10且所有值都是0的二維數組

方法一:

[ [0] * 10] * 10方法二:

[ [0 for _ in range(10)] for _ in range(10)]

本以為兩種方法得到的結果是一樣,但是在使用時發現有些不一樣。如下面的代碼所示。

當僅僅更改a[2][2]的值的時候,a[k][2] (k取0到9)全部被更改成了4。

其實這是因為[object] * n 的時候并沒有復制n-1個object,而是增加了n-1個引用。

a = [ [0] * 10] * 10 b = [ [0 for _ in range(10)] for _ in range(10)] a[2][2] = 4 b[2][2] = 4 for i in a: print(i) print('--------') for i in b: print(i) [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] -------- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 4, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

補充:python 中numpy數組與數組使用*相乘的效果

輸入:

import numpy as npb = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])a = np.array([150,270,150,270])b2 = b * aprint(b)print(a)print(b2)輸出:

[[ 1 2 3 4]

[ 5 6 7 8]

[ 9 10 11 12]]

[150 270 150 270]

[[ 150 540 450 1080]

[ 750 1620 1050 2160]

[1350 2700 1650 3240]]

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 呼图壁县| 通道| 峨眉山市| 浪卡子县| 景洪市| 鄢陵县| 东丽区| 安化县| 灌阳县| 开化县| 文成县| 兴山县| 资阳市| 嘉荫县| 莲花县| 上高县| 安庆市| 阿拉善左旗| 嘉定区| 玉溪市| 西丰县| 新宁县| 东海县| 武宣县| 环江| 宿松县| 会昌县| 三明市| 裕民县| 容城县| 炎陵县| 镶黄旗| 九龙城区| 禄劝| 开平市| 巴林左旗| 彰化市| 南投市| 兴文县| 梧州市| 故城县|