最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python入門_淺談數(shù)據(jù)結(jié)構(gòu)的4種基本類型

 更新時(shí)間:2017年05月16日 08:56:11   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇Python入門_淺談數(shù)據(jù)結(jié)構(gòu)的4種基本類型。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

數(shù)據(jù)結(jié)構(gòu):通俗點(diǎn)說(shuō),就是儲(chǔ)存大量數(shù)據(jù)的容器。這里主要介紹Python的4種基本數(shù)據(jù)結(jié)構(gòu):列表、字典、元組、集合。

格式如下:

列表:list = [val1,val2,val3,val4],用中括號(hào);
字典:dict = {key1:val1,key2:val2},大括號(hào),且每個(gè)元素是帶有冒號(hào)的key與val的對(duì)應(yīng)關(guān)系組;
元組:tuple = (val1,val2,val3,val4),小括號(hào);
集合:set = {val1,val2,val3,val4},大括號(hào)。

1. 列表:

list = [val1,val2,val3,val4]

列表最顯著的特征是:

列表中每個(gè)元素都是可變的;
列表中的元素都是有序的,即每個(gè)元素都有一個(gè)位置;
列表可以容納Python中的任何對(duì)象。
接下來(lái)看下列表的增刪改查。

增:

1 list = [1,'dwd',3.6]
2 list.insert(0,'Python')
3 print(list)

用insert方法可以實(shí)現(xiàn)在列表中增加元素。insert方法需要寫明增加在哪個(gè)位置和增加的內(nèi)容,新增元素的實(shí)際位置是在指定位置元素之前的位置;如果指定的位置不存在,默認(rèn)會(huì)增加在列表末尾。

1 list = [1,'dwd',3.6]
2 list[0:0] = [9]
3 # 【0:0】是指在list中的第1個(gè)位置插入新元素
4 list[3:3] = ['a']
5 # 【3:3】是指在list中的第4個(gè)位置插入新元素
6 print(list)

上面說(shuō)到的這兩種方法都是添加單個(gè)元素,除了添加單個(gè)元素外,還可以添加多個(gè)元素,用extend方法來(lái)實(shí)現(xiàn)。

1 list_a = [1,'dwd',3.6]
2 list_b = ['Python',56,'game']
3 list_a.extend(list_b)
4 # extend方法用于在列表末尾一次性追加另一個(gè)列表中的多個(gè)值
5 print(list_a)

 刪:

 

1 list = [1,'dwd',3.6]
2 list.remove('dwd')
3 print(list)

 刪除列表中的元素除了用上面的remove方法來(lái)實(shí)現(xiàn)外,也可以用del關(guān)鍵字來(lái)聲明:

1 list = [1,'dwd',3.6]
2 del list[0:2]
3 # 【0:2】是刪除第1和第2個(gè)位置的元素
4 print(list)

改:

1 list = [1,'dwd',3.6]
2 list[2] = 7
3 list[0] = 'start'
4 print(list)

如果想要替換掉列表中的某個(gè)元素,可以直接給列表某位置的元素重新賦值,list[2]指list列表中的第3個(gè)元素。

查:

列表的索引與之前文章《Python入門_淺談字符串的分片與索引、字符串的方法》中提到的字符串的索引類似,同樣是分正反兩種索引方式,可以從前往后,也可以從后往前索引。比如:

list = [1,'dwd',3.6]
print(list[1])
# 打印第2個(gè)位置的元素
print(list[-1])
# 打印倒數(shù)第一個(gè)位置的元素
print(list[:2])
# 打印第1和第2個(gè)元素
print(list[1:])
# 打印第2到最后一個(gè)的元素

但如果想查看某個(gè)元素的位置,就不適合用這種方式,程序會(huì)報(bào)錯(cuò)。因?yàn)榱斜碇唤邮苡梦恢眠M(jìn)行索引,不可以通過(guò)元素來(lái)查找位置。

2. 字典:

dict = {key1:val1,key2:val2}

編程世界中的很多概念都源自于生活,字典也是。這種數(shù)據(jù)結(jié)構(gòu)如我們使用的字典一樣,通過(guò)“名稱—內(nèi)容”來(lái)構(gòu)建,在Python中每個(gè)元素是帶有冒號(hào)的key與val的對(duì)應(yīng)關(guān)系組,習(xí)慣稱之為鍵值對(duì)。

字典的特征如下:

字典中的元素必須是鍵值對(duì)的形式;

鍵(key)不可以重復(fù),而值(val)可以重復(fù);

鍵不可變,無(wú)法修改;值可修改,可以是任何對(duì)象。

即使字典中有重復(fù)的鍵,打印出來(lái)時(shí)也只會(huì)出現(xiàn)一次。比如:

1 dict = {'A':'art','B':'big','C':'cute','C':'cute'}
2 print(dict)

接下來(lái)看下字典的增刪改查。

增:

字典中沒(méi)有像列表那樣有一個(gè)現(xiàn)成的insert方法可以使用,但可以通過(guò)下面這種方式插入元素,元素默認(rèn)會(huì)插入在最后一個(gè)位置。

1 dict = {'A':'art','B':'big','C':'cute'}
2 dict['D'] = 'dictionary'
3 print(dict)

上面講到在列表中增加多個(gè)元素時(shí)可以使用extend方法來(lái)實(shí)現(xiàn),在字典中也有對(duì)應(yīng)的update方法來(lái)實(shí)現(xiàn)添加多個(gè)元素。

1 dict = {'A':'art','B':'big','C':'cute'}
2 dict.update({'D':'dictionary','E':'exam'})
3 print(dict)

刪:

在字典中刪除某元素,也可以使用del關(guān)鍵字。

1 dict = {'A':'art','B':'big','C':'cute'}
2 del dict['B']
3 print(dict)

需要注意的是,雖然字典是用大括號(hào)的,但在刪除時(shí)依然使用的是中括號(hào)。

改:

如果要修改字典里的元素,直接重新給鍵賦值即可。

1 dict = {'A':'art','B':'big','C':'cute'}
2 dict['B'] = 'beyond'
3 print(dict)

查:

在字典中進(jìn)行索引時(shí),和刪除一樣,用的是中括號(hào),中括號(hào)中存放字典的鍵,也就是說(shuō)對(duì)字典元素進(jìn)行索引時(shí)是通過(guò)鍵來(lái)索引的。

1 dict = {'A':'art','B':'big','C':'cute'}
2 dict['B']
3 print(dict['B'])

之前在文章《Python入門_淺談字符串的分片與索引、字符串的方法》中有提到過(guò)字符串的分片,在字典里,字符串是不可以進(jìn)行分片的。

3. 元組

tuple = (val1,val2,val3,val4)

Python中的元組與列表類似,不同之處在于元組不可以修改,類似于穩(wěn)固版的列表,因此在列表中可以使用的增刪改的方法在元組中是不可以使用的,但是可以對(duì)元組中的元素進(jìn)行索引,和列表類似。

1 tup = (1,2,'s',7)
2 print(tup[0])
3 print(tup[-1])
4 print(tup[1:])
5 print(tup[:-2])

4. 集合

set = {val1,val2,val3,val4}

集合的概念有點(diǎn)接近于數(shù)學(xué)上的集合。每個(gè)集合中的元素是無(wú)序的、不重復(fù)的任何對(duì)象,我們可以通過(guò)集合去判斷數(shù)據(jù)的從屬關(guān)系,有時(shí)還可以通過(guò)集合把數(shù)據(jù)結(jié)構(gòu)中重復(fù)的元素減掉。

集合不可以被切片也不能被索引,除了做集合運(yùn)算之外,集合元素可以被添加和刪除。

set = {7,1,8,3,4,5,3}
set.add(0)
# 新增元素0
set.discard(7)
# 刪除掉元素7
print(set)
# 打印出的集合會(huì)從小到達(dá)排列,并去重

等后面如果用到集合時(shí),再詳細(xì)展開集合的運(yùn)算。

后續(xù)會(huì)介紹下數(shù)據(jù)結(jié)構(gòu)的一些小技巧。

操作環(huán)境:Python版本,3.6;PyCharm版本,2016.2;電腦:Mac

以上這篇Python入門_淺談數(shù)據(jù)結(jié)構(gòu)的4種基本類型就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn)

    scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn)

    這篇文章主要介紹了scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 利用?Python?把小伙伴制作成表情包

    利用?Python?把小伙伴制作成表情包

    這篇文章主要介紹了如何利用?Python把你的小伙伴變成表情包,在日常生活中,我們經(jīng)常會(huì)存取一些朋友們的丑照,在這個(gè)項(xiàng)目中,我們以萌萌噠的熊貓頭作為背景,然后試著在背景圖上加入朋友們的照片,下面詳細(xì)內(nèi)容需要的小伙伴可以參考一下
    2022-02-02
  • Python執(zhí)行遺傳編程gplearn庫(kù)使用實(shí)例探究

    Python執(zhí)行遺傳編程gplearn庫(kù)使用實(shí)例探究

    這篇文章主要為大家介紹了Python執(zhí)行遺傳編程gplearn庫(kù)使用實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Django 1.10以上版本 url 配置注意事項(xiàng)詳解

    Django 1.10以上版本 url 配置注意事項(xiàng)詳解

    這篇文章主要介紹了Django 1.10以上版本 url 配置注意事項(xiàng)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python 實(shí)現(xiàn)二叉搜索樹的四種方法

    python 實(shí)現(xiàn)二叉搜索樹的四種方法

    本文主要介紹了python 實(shí)現(xiàn)二叉搜索樹的四種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法

    python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法

    今天小編就為大家分享一篇python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python制作爬蟲采集小說(shuō)

    Python制作爬蟲采集小說(shuō)

    本文給大家分享的是使用Python制作爬蟲采集小說(shuō)的代碼,非常的簡(jiǎn)單實(shí)用,雖然還是有點(diǎn)瑕疵,大家一起改改,共同進(jìn)步
    2015-10-10
  • python命令行參數(shù)解析OptionParser類用法實(shí)例

    python命令行參數(shù)解析OptionParser類用法實(shí)例

    這篇文章主要介紹了python命令行參數(shù)解析OptionParser類用法實(shí)例,需要的朋友可以參考下
    2014-10-10
  • pyhton Sanic框架的文件上傳功能開發(fā)實(shí)戰(zhàn)示例教程

    pyhton Sanic框架的文件上傳功能開發(fā)實(shí)戰(zhàn)示例教程

    Sanic是一個(gè)Python 3.5+的異步Web框架,它的設(shè)計(jì)理念與Flask相似,但采用了更高效的異步I/O處理,在處理文件上傳時(shí),Sanic同樣提供了方便、高效的方法,本教程將結(jié)合實(shí)際案例,詳細(xì)介紹如何在Sanic框架中實(shí)現(xiàn)文件上傳的功能,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • 使用Python實(shí)現(xiàn)批量分割PDF文件

    使用Python實(shí)現(xiàn)批量分割PDF文件

    這篇文章主要為大家詳細(xì)介紹了如何使用Python進(jìn)行批量分割PDF文件功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02

最新評(píng)論

安阳市| 锦屏县| 和田市| 布尔津县| 蓬安县| 宝应县| 江都市| 库车县| 封开县| 东乡县| 射阳县| 博爱县| 突泉县| 磐安县| 延庆县| 隆回县| 瓦房店市| 孟津县| 赤城县| 桓台县| 财经| 浦县| 舟山市| 应城市| 射阳县| 兴和县| 克什克腾旗| 镇平县| 安福县| 平谷区| 乌恰县| 文山县| 洛阳市| 安化县| 唐河县| 虞城县| 五大连池市| 阿坝县| 苏尼特右旗| 二连浩特市| 闸北区|