<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
列表內的每一個資料,稱之為元素
定義語法:
[元素1, 元素2, 元素3, ......]
例:
list = ['iii', 666, '你好']
列表中的每一個元素,都有其位置下標索引,從前向後的方向,從0開始,依次遞增或者遞減
語法:列表[下標],即可取出
1.2.1 列表的查詢功能(方法)
功能:查詢指定元素在列表的下標,如果找不到,報錯ValueError
語法:列表.index(元素)
1.2.2 列表的修改功能(方法)
修改特定位置(索引)的元素值:
語法:列表[下標] = 值
可以使用如上語法,直接對指定下標(正向、反向下標均可)的值進行:重新賦值(修改)
插入元素:
語法:列表.insert(下標, 元素)
,在指定的下標位置,插入指定的元素
追加元素:
語法:列表.append(元素)
,將指定元素,追加到列表的尾部
追加元素方式2:
語法:列表.extend(其它資料容器)
,將其它資料容器的內容取出,依次追加到列表尾部
刪除元素:
del 列表[下標]
列表.pop(下標)
刪除某元素在列表中的第一個匹配項:
語法:列表.remove(元素)
清空列表內容:
語法:列表.clear()
統計某元素在列表內的數量
語法:列表.count(元素)
1.2.3 列表的查詢功能(方法)
統計列表內,有多少元素
語法:len(列表)
可以得到一個int數位,表示列表內的元素數量
list = [21, 25, 21, 23, 22, 20] list.append(31) list.extend([29, 33, 30]) listone = list.pop() idx = list.index(31) print(idx)
使用方式 | 作用 |
---|---|
列表.append(元素) | 向列表中追加一個元素 |
列表.extend(容器) | 將資料容器的內容依次取出,追加到列表尾部 |
列表.insert(下標, 元素) | 在指定下標處,插入指定的元素 |
del 列表[下標] | 刪除列表指定下標元素 |
列表.pop(下標) | 刪除列表指定下標元素 |
列表.remove(元素) | 從前向後,刪除此元素第一個匹配項 |
列表.clear() | 清空列表 |
列表.count(元素) | 統計此元素在列表中出現的次數 |
列表.index(元素) | 查詢指定元素在列表的下標 找不到報錯ValueError |
len(列表) | 統計容器內有多少元素 |
1.4.1 列表的遍歷 - while迴圈
def while_list(): list = [11, 12, 13] index = 0 while index < len(list): el = list[index] print(f'元素:{el}') index += 1 while_list()
1.4.2 列表的遍歷 - for迴圈
def for_list(): list = [1, 2, 3, 4, 5] for v in list: print(f'元素:{v}') for_list()
練習案例:取出列表內的偶數
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] index = 0 new_list = [] while index < len(list): if list[index] % 2 == 0: new_list.append(list[index]) index += 1 for val in list: if val % 2 == 0: new_list.append(val) print(new_list)
元組定義:定義元組使用小括號,且使用逗號隔開各個資料,資料可以是不同的資料型別。
元組一旦定義完成,就不可修改
元組由於不可修改的特性,所以其操作方法非常少。
元組也可以被遍歷,同列表一樣。
可以使用while迴圈和for迴圈遍歷它
方法 | 作用 |
---|---|
index() | 查詢某個資料,如果資料存在返回對應的下標,否則報錯 |
count() | 統計某個資料在當前元組出現的次數 |
len(元組) | 統計元組內的元素個數 |
t1 = (1, 11) print(f'{t1}, type:{type(t1)}') num = t1.index(11)
元組的特點:
和其它容器如:列表、元組一樣,字串也可以通過下標進行存取
同元組一樣,字串是一個:無法修改的資料容器。
所以:
操作 | 說明 |
---|---|
字串[下標] | 根據下標索引取出特定位置字元 |
字串.index(字串) | 查詢給定字元的第一個匹配項的下標 |
字串.replace(字串1, 字串2) | 將字串內的全部字串1,替換為字串2 不會修改原字串,而是得到一個新的 |
字串.split(字串) | 按照給定字串,對字串進行分隔 <br/>不會修改原字串,而是得到一個新的列表 |
字串.strip()<br/> 字串.strip(字串) | 移除首尾的空格和換行符或指定字串 |
字串.count(字串) | 統計字串內某字串的出現次數 |
len(字串) | 統計字串的字元個數 |
同列表、元組一樣,字串也支援while迴圈和for迴圈進行遍歷
str = '小小叮噹' index = 0 while index < len(str): print(str[index]) index += 1 for v in str: print(v)
作為資料容器,字串有如下特點:
序列支援切片,即:列表、元組、字串,均支援進行切片操作
切片:從一個序列中,取出一個子序列
語法:序列[起始下標:結束下標:步長]
表示從序列中,從指定位置開始,依次取出元素,到指定位置結束,得到一個新序列:
起始下標表示從何處開始,可以留空,留空視作從頭開始
結束下標(不含)表示何處結束,可以留空,留空視作擷取到結尾
步長表示,依次取元素的間隔
my_list = [1, 2, 3, 4, 5] print(my_list[1:4:2]) my_tuple = (0, 1, 2, 3, 4, 5, 6) print(my_tuple[0:6:2]) str = 'ay,呀當叮小來,nohtyP學' new_str = str[::-1] # print(new_str) list = new_str.split(',') print(list[1].replace('來', ''))
集合的定義:
# 定義集合字面量
{元素,元素, ..., 元素}
# 定義集合變數
變數名稱 = {元素, 元素, ..., 元素}
# 定義空集合
變數名稱 = set()
操作 | 說明 |
---|---|
集合.add(元素) | 集合內新增一個元素 |
集合.remove(元素) | 移除集合內指定的元素 |
集合.pop() | 從集合中隨機取出一個元素 |
集合.clear() | 將集合清空 |
集合1.difference(集合2) | 得到一個新集合,內含2個集合的差集 原有的2個集合內容不變 |
集合1.difference_update(集合2) | 在集合1中,刪除集合2中存在的元素 集合1被修改,集合2不變 |
集合1.union(集合2) | 得到1個新集合,內含2個集合的全部元素<br/> 原有的2個集合內容不變 |
len(集合) | 得到一個整數,記錄了集合的元素數量 |
集合的特點:
例:
my_list = ['111', '222', '333', '111', '333', 'itit', 'hehe', 'itit'] new_set = set() for val in my_list: new_set.add(val) print(new_set)
字典的定義:同樣使用{},不過儲存的元素是一個個的:鍵值對
注意:
提示:
dic = { '王': { '部門': '科技部', '工資': 3000, '級別': 1 }, '周': { '部門': '市場部', '工資': 5000, '級別': 2 }, '林': { '部門': '市場部', '工資': 7000, '級別': 3 }, '張': { '部門': '科技部', '工資': 4000, '級別': 1 }, } for key in dic: if dic[key]['級別'] == 1: dic[key]['級別'] += 1 dic[key]['工資'] += 1000 print(dic)
到此這篇關於一文帶你搞懂Python中的資料容器的文章就介紹到這了,更多相關Python資料容器內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45