久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

        手機站
        千鋒教育

        千鋒學習站 | 隨時隨地免費學

        千鋒教育

        掃一掃進入千鋒手機站

        領取全套視頻
        千鋒教育

        關注千鋒學習站小程序
        隨時隨地免費學習課程

        當前位置:首頁  >  技術干貨  > Python語言自帶的數(shù)據(jù)結構有哪些

        Python語言自帶的數(shù)據(jù)結構有哪些

        來源:千鋒教育
        發(fā)布人:xqq
        時間: 2023-11-07 05:31:32 1699306292

        Python作為一種腳本語言,其要求強制縮進,使其易讀、美觀,它的數(shù)據(jù)類型可以實現(xiàn)自動轉換,而不需要像C、Java那樣給變量定義數(shù)據(jù)類型,使其編寫非常方便簡單,所以廣受大家的歡迎。

        現(xiàn)如今,Python已經(jīng)廣泛的應用于數(shù)據(jù)分析、數(shù)據(jù)挖掘、機器學習等眾多科學計算領域。所以既然涉及到科學計算,深入了解Python原生提供的數(shù)據(jù)結構是很有必要的,這樣才能在數(shù)據(jù)的海洋中游刃有余、得心應手。本文便以此展開,做一個歸納整理,方便收藏。

        一、序列結構

        首先介紹的數(shù)據(jù)結構是序列結構,所謂序列,也就是元素順序是很重要的,不同元素順序的序列是不同的序列。Python中含有六種內(nèi)建的序列結構,分別是list、tuple、string、unicode、buffer、xrange。

        1.1、list(列表)

        list,列表是一種序列,可以看做是一種數(shù)組,但不同的于其它語言的是,Python列表中的元素可以是任何數(shù)據(jù)類型,諸如,數(shù)字、字符串等等。

        下面為創(chuàng)建list結構的幾種方式:

        //1.通過中括號括起已知的元素創(chuàng)建list

        mylist=['orange','apple',1,2,3.14];

        //2.通過中括號創(chuàng)建空list,然后用append()追加動態(tài)元素

        mylist=[];

        mylist.append('orange');

        //3.通過list()方法創(chuàng)建空list

        mylist=list();

        選取list元素的方法:

        //通過中括號加下對應下標選取,下標從0開始,-1為倒數(shù)第一個元素,以此類推

        mylist[0];

        mylist[-1];

        切片是Python中序列結構獨有的一種操作,意思是從序列中選取一個子序列,凡是序列均可切片,list是序列,所以list可以切片。切片方法:

        //通過[begin:end]方式完成切片

        mylist=[1,2,3,4,5];

        mylist[0:2];//生成的序列為[1,2,3]

        list常用方法:

        list.append(x),在列表的末尾添加一個元素。

        list.insert(i,x),在給定的位置插入一個元素,第一個參數(shù)是要插入的元素的索引。

        list.remove(x),移除列表中第一個值為x的元素,如果沒有這樣的元素,則拋出異常。

        list.clear(),刪除列表中所有的元素。

        list.index(x),返回列表中第一個值為x的元素的從零開始的索引,如果沒有這樣的元素,則拋出異常。

        list.count(x),返回元素x在列表中出現(xiàn)的次數(shù)。

        list.reverse(),反轉列表中的元素。

        1.2、tuple(元組)

        tuple,元組和列表一樣,都以看做是一種數(shù)組,元素可以是任何數(shù)據(jù)類型,甚至可以嵌套。唯一的區(qū)別是,元組內(nèi)的元素一旦創(chuàng)建,是不可修改的,也不可追加。并且元組使用小括號創(chuàng)建,同樣元組可切片,切片方法同list。

        //1.通過小括號括起已知的元素創(chuàng)建tuple

        mytuple=(1,3,'hello!')

        //2.不可以用append()往tuple追加,因為tuple一旦創(chuàng)建,不可變更

        獲取tuple中的元素:

        //和列表一樣,通過中括號加下對應下標選取,下標從0開始,-1為倒數(shù)第一個元素,以此類推

        mytuple[0];

        mytuple[-1];

        1.3、string,unicode,buffer,xrange

        這四個也是序列,做科學計算由于不太常用,不做太多介紹。

        string可以看成是少量單個字符構成的list,如:

        mystring='orange';

        mylist=['o','r','a','n','g','e'];

        由于string也是序列,所以也可以切片,切片就當做單個字符構成的list切片即可,很多原理類似,不做過多介紹。

        unicode和string類似,不過可以支持原生unicode編碼的序列,如\\u4f60\\u597d。

        buffer可以看成大量字符構成的list。

        xrange可以看成純數(shù)字構成的list。

        科學計算

        二、散列結構

        所謂散列結構,區(qū)別于上述序列結構,散列結構中,元素順序是不重要的,順序不同的散列,還是同一個散列。散列結構有set、dict。

        2.1、set(集合)

        set,集合,集合是由不重復元素組成的無序的集,重點是不重復,和數(shù)學中的集合類似。無序是散列結構的特點,集合是一種散列結構,所以集合也有無序的特點。

        創(chuàng)建set的方法:

        //和list很類似,可對應參考

        //1.通過大括號括起已知的元素創(chuàng)建set

        myset={'red','blue',2.71};

        //2.通過set()方法創(chuàng)建空set,注意不能用{}創(chuàng)建空set,這樣創(chuàng)建的是空dict

        //3.然后用add()添加動態(tài)元素,注意不是append

        myset=set();

        myset.add('yellow');

        Python的set集合可以支持并集,交集,差集,對稱差等數(shù)學運算:

        //創(chuàng)建集合a

        a=set('abracadabra');

        //創(chuàng)建集合b

        b=set('alacazam');

        ------------------

        print(a)

        //結果:{'a','r','b','c','d'}

        ------------------

        print(a-b);//差集

        //結果:{'r','d','b'}

        ------------------

        print(a|b);//并集

        //結果:{'a','c','r','d','b','m','z','l'}

        ------------------

        print(a&b);//交集

        //結果:{'a','c'}

        ------------------

        print(a^b);//對稱差

        //結果:{'r','d','b','m','z','l'}

        set常用方法:

        set.remove(x),移除集合中值為x的元素,如果沒有這樣的元素,則拋出異常。

        set.isdisjoint(set2),判斷兩個集合是否包含相同的元素,如果沒有返回True,否則返回False。

        set.issubset(set2),判斷集合set是否包含于set2

        set.issuperset(set2),判斷集合set是否包含set2,issubset與issuperset是一對互逆操作。

        2.2、dict(字典)

        dict,字典,字典由鍵值對組成,具有唯一性,可變性。字典是可變對象但字典的鍵的唯一的,是不可變對象。理解字典的很好方式,就是將它看做是一個鍵:值對的集合。

        創(chuàng)建dict的方法:

        //1.通過大括號括起鍵值對創(chuàng)建dict

        mydict={'name':'tom','age':'24'};

        //2.通過dict()方法創(chuàng)建dict

        mydict=dict(name='tom',age=24);

        //3.通過大括號創(chuàng)建空dict,然后通過中括號添加鍵值對

        mydict={};

        mydict['tel']='1300000000';

        獲取dict中的元素:

        //需要已經(jīng)知道鍵的名稱,否則無法獲取,除非遍歷

        mydict.get('tel');

        dict常用方法:

        dict.copy(),拷貝出一個新的字典。

        dict.setdefault({'sex':'man'}),有則查,無則增。

        dict.update({'sex':'male'}),有則改,無則增。

        dict.pop('tel'),指定刪除,參數(shù)必須要有需要刪除的鍵。

        dict.clear(),清空字典。

        dict.keys(),查詢字典中所有的鍵。

        dict.values(),查詢字典中所有的值。

        dict.items(),查詢字典中所有的鍵值對。

        以上內(nèi)容為大家介紹了Python語言自帶的數(shù)據(jù)結構有哪些,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。http://m.2667701.com/

        tags: python培訓
        聲明:本站稿件版權均屬千鋒教育所有,未經(jīng)許可不得擅自轉載。
        10年以上業(yè)內(nèi)強師集結,手把手帶你蛻變精英
        請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
        免費領取
        今日已有369人領取成功
        劉同學 138****2860 剛剛成功領取
        王同學 131****2015 剛剛成功領取
        張同學 133****4652 剛剛成功領取
        李同學 135****8607 剛剛成功領取
        楊同學 132****5667 剛剛成功領取
        岳同學 134****6652 剛剛成功領取
        梁同學 157****2950 剛剛成功領取
        劉同學 189****1015 剛剛成功領取
        張同學 155****4678 剛剛成功領取
        鄒同學 139****2907 剛剛成功領取
        董同學 138****2867 剛剛成功領取
        周同學 136****3602 剛剛成功領取
        相關推薦HOT
        黄石市| 肥乡县| 阳新县| 项城市| 霍邱县| 三河市| 巧家县| 巴塘县| 无极县| 龙川县| 阿坝县| 盐边县| 甘洛县| 新田县| 永康市| 洪雅县| 定南县| 尉犁县| 格尔木市| 略阳县| 克拉玛依市| 张家川| 嫩江县| 昌图县| 长宁县| 台东县| 九龙县| 临夏市| 海宁市| 肇源县| 蒙山县| 阿鲁科尔沁旗| 黄平县| 新宁县| 阿荣旗| 常山县| 即墨市| 惠东县| 安岳县| 金秀| 饶阳县|