日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python学习笔记:list和tuple

發布時間:2025/3/15 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python学习笔记:list和tuple 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#前言
最近在學習深度學習,已經跑出了幾個模型,但Pyhton的基礎不夠扎實,因此,開始補習Python了,大家都推薦廖雪峰的課程,因此,開始了學習,但光學有沒有用,還要和大家討論一下,因此,寫下這些帖子,廖雪峰的課程連接在這里:廖雪峰
Python的相關介紹,以及它的歷史故事和運行機制,可以參見這篇:python介紹
Python的安裝可以參見這篇:Python安裝
Python的運行模式以及輸入輸出可以參見這篇:Python IO
Python的基礎概念介紹,可以參見這篇:Python 基礎
Python字符串和編碼的介紹,可以參見這篇:Python字符串與編碼
目錄:

文章目錄


#數據結構:list
Python內置的常用數據結構之一是列表:list。
list是一種有序的集合,可以隨時添加和刪除其中的元素。
比如,列出班里所有同學的名字,就可以用一個list表示:

>>> Classmates = ['Mike', 'Bob', 'Tracy'] >>> Classmates ['Mike', 'Bob', 'Tracy']

變量Classmates就是一個list。用len()函數可以獲得list元素的個數:

>>> len(classmates) 3

用索引來訪問list中每一個位置的元素,記得索引是從0開始的:

>>> classmates[0] 'Mike' >>> classmates[1] 'Bob' >>> classmates[2] 'Tracy' >>> clss[3] Traceback (most recent call last):File "<pyshell#36>", line 1, in <module>clss[3] IndexError: list index out of range

當索引超出了范圍時,Python會報一個IndexError錯誤,所以,要確保索引不要越界,記得最后一個元素的索引是len(list) - 1。
如果要取最后一個元素,除了計算索引位置外,還可以用-1做索引,直接獲取最后一個元素:

>>> classmates[-1] 'Tracy'以此類推,可以獲取倒數第2個、倒數第3個:>>> classmates[-2] 'Bob' >>> classmates[-3] 'Michael' clss[-4] Traceback (most recent call last):File "<pyshell#41>", line 1, in <module>clss[-4] IndexError: list index out of range >>>

當然,倒數第4個就越界了。

list是一個可變的有序表,所以,可以往list中追加元素到末尾:

>>> classmates.append('Adam') >>> classmates ['Mike', 'Bob', 'Tracy', 'Adam']

也可以把元素插入到指定的位置,比如索引號為1的位置:

>>> classmates.insert(1, 'Jack') >>> classmates ['Mike', 'Jack', 'Bob', 'Tracy', 'Adam']

要刪除list末尾的元素,用pop()方法:

>>> classmates.pop() 'Adam' >>> classmates ['Mike', 'Jack', 'Bob', 'Tracy']

要刪除指定位置的元素,用pop(i)方法,其中i是索引

>>> classmates.pop(1) 'Jack' >>> classmates

[‘Mike’, ‘Bob’, ‘Tracy’]個元素替換成別的元素,可以直接賦值給對應的索引位置:

>>> classmates[1] = 'Sarah' >>> classmates ['Mike', 'Sarah', 'Tracy']

list里面的元素的數據類型也可以不同,比如:

>>> L = ['Apple', 123, True]list元素也可以是另一個list,比如:>>> s = ['python', 'java', ['asp', 'php'], 'scheme'] >>> len(s) 4

要注意s只有4個元素,其中s[2]又是一個list,如果拆開寫就更容易理解了:

>>> sub = ['asp', 'php'] >>> s = ['python', 'java', sub, 'scheme'] 注意sub不加雙引號,代表是個變量 要拿到'php'可以寫sub[1]或者s[2][1],因此s可以看成是一個二維數組, 類似的還有三維、四維……數組,不過很少用到。

如果一個list中一個元素也沒有,就是一個空的list,它的長度為0:

>>> L = [] >>> len(L) 0

#數據結構:tuple

list是一種可變的有序列表,那如果不想變呢? 另一種有序列表叫元組:tuple。tuple和list非常類似,但是tuple一旦初始化就不能修改,比如同樣是列出同學的名字:

>>> classmates = ('Michael', 'Bob', 'Tracy')

注意初始化方式的區別,現在,classmates這個tuple不能變了,它也沒有append(),insert()這樣的方法。其他獲取元素的方法和list是一樣的,你可以正常地使用classmates[0],classmates[-1],但不能賦值成另外的元素。

不可變的tuple有什么意義?因為tuple不可變,所以代碼更安全。如果可能,能用tuple代替list就盡量用tuple。

tuple的陷阱:當你定義一個tuple時,在定義的時候,tuple的元素就必須被確定下來,比如:

>>> t = (1, 2) >>> t (1, 2)

如果要定義一個空的tuple,可以寫成():

>>> t = () >>> t ()

但是,要定義一個只有1個元素的tuple,如果你這么定義:

>>> t = (1) >>> t 1

定義的不是tuple,是1這個數!這是因為括號()既可以表示tuple,又可以表示數學公式中的小括號,這就產生了歧義,因此,Python規定,這種情況下,按小括號進行計算,計算結果自然是1。

所以,只有1個元素的tuple定義時必須加一個逗號,,來消除歧義:

>>> t = (1,) >>> t (1,)

Python在顯示只有1個元素的tuple時,也會加一個逗號,,以免你誤解成數學計算意義上的括號。

最后來看一個“可變的”tuple:

>>> t = ('a', 'b', ['A', 'B']) >>> t[2][0] = 'X' >>> t[2][1] = 'Y' >>> t ('a', 'b', ['X', 'Y'])

指向的地址是不能變的。
這個tuple定義的時候有3個元素,分別是’a’,‘b’和一個list。不是說tuple一旦定義后就不可變了嗎?怎么后來又變了?
表面上看,tuple的元素確實變了,但其實變的不是tuple的元素,而是list的元素。tuple一開始指向的list并沒有改成別的list,所以,tuple所謂的“不變”是說,tuple的每個元素,指向永遠不變。即指向’a’,就不能改成指向’b’,指向一個list,就不能改成指向其他對象,但指向的這個list本身是可變的!

理解了“指向不變”后,要創建一個內容也不變的tuple怎么做?那就必須保證tuple的每一個元素本身也不能變。
可能的落實一下,python的數據究竟怎么存在電腦里了。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Python学习笔记:list和tuple的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩城人免费 | 日韩视频一二三区 | 日本 奴役 捆绑 受虐狂xxxx | 日韩中文字幕一区 | 三级三级久久三级久久18 | 亚洲一区二区在线免费观看 | 综合网五月 | 午夜毛片| 一区二区网站 | 欧美高清视频一区 | 日韩一区二区三区在线观看视频 | 人妻在线一区 | 9999精品视频 | 美女视屏 | 亚洲国产午夜 | 久久综合狠狠综合久久综合88 | 日韩一区二区在线观看视频 | 欧美另类亚洲 | 亚洲av无一区二区三区怡春院 | 麻豆综合网 | 欧美精品综合 | 亚洲欧美国产一区二区三区 | 99精品久久 | 一级全黄少妇性色生活片 | 国产精品高潮呻吟久久aⅴ码 | 欧美男人又粗又长又大 | 亚洲国产精品视频在线 | 国产亚洲色婷婷久久99精品91 | 欧洲丰满少妇做爰 | 欧美午夜小视频 | 亚洲精品乱码久久久久久日本蜜臀 | 男人天堂视频网站 | 三上悠亚痴汉电车 | 美女天天干 | 乱图区 | 一区免费在线 | 亚洲一卡二卡三卡 | 午夜精品小视频 | 毛片网站免费在线观看 | 精品一区久久久 | 影音先锋人妻啪啪av资源网站 | 99国产精品99久久久久久粉嫩 | 日韩欧美123 | 色av网| 看片国产 | 精品久久久久久久中文字幕 | 天堂影院一区二区 | 久久精品无码一区二区三区免费 | 乱人伦xxxx国语对白 | 99伊人网| 免费看91 | 成人性生活视频 | 亚洲熟女一区二区 | 人妻在线日韩免费视频 | 中文字幕天堂网 | 国产一极毛片 | 在线观看欧美日韩 | 中文字幕综合在线 | 一区二区三区免费视频观看 | 亚洲一区二区三区在线观看视频 | 在线观看视频中文字幕 | 亚洲最大黄色 | 在线视频二区 | 肉色丝袜小早川怜子av | 亚洲成人激情av | 在线观看欧美一区二区三区 | 99久久人妻精品免费二区 | 免费久久精品视频 | 亚洲制服丝袜诱惑 | 疯狂做爰的爽文多肉小说王爷 | 精品伊人久久 | 青娱乐国产在线 | 国产免费久久 | 欧美69囗交视频 | 久久露脸国语精品国产 | 欧美性色黄 | 国产美女福利在线 | 国产一级理论片 | 国产成人精品123区免费视频 | 欧美福利网 | 亚洲自拍在线观看 | 欧美顶级黄色大片免费 | 男女啊啊啊 | 淫辱的世界(调教sm)by | 人妻无码中文字幕免费视频蜜桃 | 欧美性做爰免费观看 | 天堂色网 | 日韩av免费在线观看 | 天海翼视频在线观看 | gav在线| 日韩精品中文字幕在线观看 | 日韩 欧美 精品 | 这里只有精品视频在线观看 | 亚洲av日韩av永久无码下载 | www.香蕉视频在线观看 | 花样视频污 | 少妇精品一区二区 | 中文字幕日韩高清 | 中日韩在线播放 |