濮阳杆衣贸易有限公司

主頁 > 知識庫 > 聊聊Python中關于a=[[]]*3的反思

聊聊Python中關于a=[[]]*3的反思

熱門標簽:佛山400電話辦理 地圖標注面積 市場上的電銷機器人 小蘇云呼電話機器人 所得系統電梯怎樣主板設置外呼 北京電銷外呼系統加盟 朝陽手機外呼系統 北瀚ai電銷機器人官網手機版 儋州電話機器人

Python 關于a=[[]]*3的反思

之前用python做了一個關于交通大數據的項目,由于之前比較趕進度,故現在會陸續(xù)更新對項目代碼的一些反思。

1、

由此可以看出,a[0],a[1],a[2]指向的是同一個元素,[[]]*3表示在a中開辟三份地址,且地址相同。

2、

重新對a[0]賦值,故a[0]地址改變

3、

對a[0][0]賦值,即改變a[0],a[1],a[2]指向的地址里的內容

注: .append\+=\-=等都不會重新賦地址,=會重新賦地址 故而,下面兩條語句都會出現問題:


在上述278、280兩行的語句中,我都用到了[[]]*len(spts),所以只要其中某一個[]之后有.append或+=或其它不重新指向地址的行為,另外兩個元素也會跟著改變。

Python a, b = b, a +b [Python3常見問題]

閱讀文檔發(fā)現的。

>>> # Fibonacci series:
... # the sum of two elements defines the next
... a, b = 0, 1
>>> while b  10:
...     print(b)
...     a, b = b, a+b
...
1
1
2
3
5
8

他實際上就是:

c = a + b
a = b
b = c

其他應用

1. 交換

a, b = 0, 1
a, b = b, a

評價:省去了temp中間變量

2. 斐波那契

>>> a, b = 0, 1
>>> while b  1000:
...     print(b, end=',')
...     a, b = b, a+b
...
1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,

評價:比起數組的,遞歸的,確實簡潔

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 關于Python的一些學習總結
  • python3編碼問題匯總
  • 解決Python3中的中文字符編碼的問題
  • python [:3] 實現提取數組中的數

標簽:酒泉 龍巖 寧夏 江蘇 金融催收 云南 定西 商丘

巨人網絡通訊聲明:本文標題《聊聊Python中關于a=[[]]*3的反思》,本文關鍵詞  聊聊,Python,中,關于,的,反思,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《聊聊Python中關于a=[[]]*3的反思》相關的同類信息!
  • 本頁收集關于聊聊Python中關于a=[[]]*3的反思的相關信息資訊供網民參考!
  • 推薦文章
    全椒县| 莎车县| 潞西市| 镇宁| 株洲县| 遵义县| 沅陵县| 永安市| 大悟县| 绥阳县| 泗洪县| 大城县| 济源市| 奈曼旗| 牟定县| 金乡县| 民乐县| 广昌县| 布拖县| 城步| 花莲县| 金山区| 罗田县| 色达县| 定边县| 赞皇县| 衢州市| 建湖县| 余姚市| 龙山县| 焦作市| 咸宁市| 建阳市| 牙克石市| 神木县| 堆龙德庆县| 北川| 安阳县| 衢州市| 乌鲁木齐县| 日喀则市|