1. 程式人生 > >Python的資料型別3元組,集合和字典

Python的資料型別3元組,集合和字典

首先要講到的就是元組

元組其實擁有列表的一些特性,可以儲存不同型別的值,但在某些方面元組又比不上列表

定義一個元組,你可以不用加‘ [ ] ’,你只需用逗號隔開即可

例如

1 2 3 4 5 6 7 8 9 10 In [ 1 ]: my_tuple = "susmote" , 28 , 123456789   In [ 2 ]: my_tuple[ 0 ] Out[
2 ]: 'susmote'   In [ 3 ]: my_tuple[ 1 ] Out[ 3 ]: 28   In [
4 ]: my_tuple Out[ 4 ]: ( 'susmote' , 28 , 123456789 )

  

元組也能被巢狀

1 2 3 4 5 6 7 In [ 5 ]: nested_t = my_tuple, ( 4 , 3 , 2 , 1 )   In [ 6 ]: nested_t Out[ 6 ]: (( 'susmote' , 28 , 123456789 ), ( 4 , 3 , 2 , 1 ))   In [ 7 ]: nested_t[ 0 ][ 0 ] Out[ 7 ]: 'susmote'

  

在這裡,元組和列表最大的不同就是元組是不可變的,不能通過直接賦值改變元組中的值

1 2 3 4 5 6 7 8 9 In [ 8 ]: my_tuple = "susmote" , 28 , 123456789   In [ 9 ]: my_tuple[ 0 ] = "ayesup" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - TypeError                                 Traceback (most recent call last) <ipython - input - 9 - d99875c0ce61> in <module>() - - - - > 1 my_tuple[ 0 ] = "ayesup"   TypeError: 'tuple' object does not support item assignment

  下面報了一個型別錯誤

但是,在元組裡面可以包含列表,而列表有是可變的,所以說元組是包含可變物件

1 2 3 4 5 6 In [ 11 ]: my_tuple = ([ 1 , 2 , 3 ],[ 4 , 5 , 6 ])   In [ 12 ]: my_tuple[ 0 ][ 0 = 7   In [ 13 ]: my_tuple Out[ 13 ]: ([ 7 , 2 , 3 ], [ 4 , 5 , 6 ])

  在這裡,要注意,括號是可以不用加上的,但為什麼規範起見,還是儘量要把括號加上

 

元組是可以為空的,你只需要在賦值的時候加一個括號即可

1 2 3 4 In [ 16 ]: my_tuple = ()   In [ 17 ]: len (my_tuple) Out[ 17 ]: 0

  

如果你想建立一個只有一個元素的元組,那麼你只需要在最後加上一個逗號就可以了

1 2 3 4 5 6 7 In [ 18 ]: my_tuple = "susmote" ,   In [ 19 ]: my_tuple Out[ 19 ]: ( 'susmote' ,)   In [ 20 ]: len (my_tuple) Out[ 20 ]: 1

  

元組是一個包含多個值的列表集合,所以我們可以直接獲取其中的值,並賦給一個變數

1 2 3 4 5 6 7 8 9 10 11 In [ 27 ]: my_tuple = "susmote" , 123456 , 18   In [ 28 ]: my_tuple = "susmote" , 18 , 13488888888   In [ 29 ]: name, age, phone = my_tuple   In [ 30 ]: name Out[ 30 ]: 'susmote'   In [ 31 ]: phone Out[ 31 ]: 13488888888

  

接下來我們講一下集合

集合相信大家應該不陌生,初中的時候應該是學過的,當然你如果說你沒上個初中,那就另當別論了

由一個或多個確定的元素所構成的整體叫做集合。這是數學中的概念,在python中也可以這樣簡單的認為

宣告一個要用到花括號" { } ",你要把值全部加到括號裡面

首先集合的一個重要概念就是無序

例如,我們宣告一個集合

1 2 3 4 In [ 32 ]: my_set = { 'a' , 'b' , 'c' , 'd' }   In [ 33 ]: print (my_set) { 'b' , 'd' , 'c' , 'a' }

  很清晰的看出他是無序的

 

同時你也可以通過判斷語句" in "來獲取某個元素是否存在與集合中,他返回一個布林型別

1 2 3 4 5 6 7 In [ 36 ]: my_set = { 'a' , 'b' , 'c' , 'd' }   In [ 37 ]: 'a' in my_set Out[ 37 ]: True   In [ 38 ]: 'e' in my_set Out[ 38 ]: False

  tips:Ture代表真,false代表假(相信大家都知道)

 

然後集合還有一個概念就是裡面的元素只能是唯一的,如果有重複的,會自動移除

1 2 3 4 In [ 1 ]: my_set = { 'a' , 'b' , 'b' , 'c' , 'c' , 'd' }   In [ 2 ]: my_set Out[ 2 ]: { 'a' , 'b' , 'c' , 'd' }

  

除了通過花括號賦值,我們還可以直接呼叫 set() 方法,生成一個集合

1 2 3 4 In [ 3 ]: my_set = set ( 'abcdefgabcdefg' )   In [ 4 ]: my_set Out[ 4 ]: { 'a' , 'b' , 'c' , 'd' , 'e' , 'f' , 'g' }

  

下面我們要講到集合的一個重要的概念

集合的運算

“ - ”   差運算

1 2 3 4 5 6 In [ 5 ]: a = set ( 'abcde' )   In [ 6 ]: b = set ( 'bdfgh' )   In [ 7 ]: a - b Out[ 7 ]: { 'a' , 'c' , 'e' }

  只保留a獨有的元素,其他的如有與b相同的則移除

“ | ” 並運算

1 2 3 4 5 6 In [ 8 ]: a = set ( 'abcde' )   In [ 9 ]: b = set ( 'bdfgh' )   In [ 10 ]: a | b Out[ 10 ]: { 'a' , 'b' , 'c' , 'd' , 'e' , 'f' , 'g' , 'h' }

  包含a和b所有的元素,如果有重複的則只留一個

“ & ” 交運算,求交集

1 2 3 4 5 6 In [ 11 ]: a = set ( 'abcde' )   In [ 12 ]: b = set ( 'bdfgh' )   In [ 13 ]: a & b Out[ 13 ]: { 'b' , 'd' }

  只保留a集合和b集合中相同的元素

“ ^ ” 求交集的補集

1 2 3 4 5 6 In [ 16 ]: a = set ( 'abcde' )   In [ 17 ]: b = set ( 'bdfgh' )   In [ 18 ]: a ^ b Out[ 18 ]: { 'a' , 'c' , 'e' , 'f' , 'g' , 'h' }

  保留a和b都單獨存在的元素,去除a與b相同的元素

 

關於集合我們主要需要了解的只有這些,至於運用,後續講

 

在這我們再講最後一種資料型別

字典( Dictionaries)

在python中,字典是一個很常用的資料型別。在其他語言中,也有叫做關聯陣列的

字典不像列表,元組,存在自動有順序的索引(index)

字典中的索引也就是必須手動建立的Key(鍵),每個鍵對應一個value(值)

而且鍵除了普通的數值型別之外,還可以用“String”型別

定義一個字典要用到“ { } ”,每個key後面加“ : ”(冒號)接value(值),再加一個值的話,用逗號隔開

例如,我們下面定義一個字典

1 2 3 4 In [ 23 ]: my_dict = { 'name' : "susmote" , 'age' : 18 , 'tel' : 1348888888 }   In [ 24 ]: my_dict Out[ 24 ]: { 'age' : 18 , 'name' : 'susmote' , 'tel' : 1348888888 }

  

下面我們通過key來獲取值

1 2 3 4 5 6 7 In [ 20 ]: my_dict = { 'name' : "susmote" , 'age' : 18 , 'tel' : 1348888888 }   In [ 21 ]: my_dict[ "name" ] Out[ 21 ]: 'susmote'   In [ 22 ]: my_dict[ "tel" ] Out[ 22 ]: 1348888888

  

如果你覺得裡面有個元素沒用了,你可以通過  “del()”方法來刪除

1 2 3 4 5 6 7 8 9 In [ 23 ]: my_dict = { 'name' : "susmote" , 'age' : 18 , 'tel' : 1348888888 }   In [ 24 ]: my_dict Out[ 24 ]: { 'age' : 18 , 'name' : 'susmote' , 'tel' : 1348888888 }   In [ 25 ]: del my_dict[ "tel" ]   In [ 26 ]: my_dict Out[ 26 ]: { 'age' : 18 , 'name' : 'susmote' }

  

你可以通過list()方法列出字典裡所有的key,或者是所有的value

1 2 3 4 5 6 7 In [ 32 ]: my_dict = { 'name' : "susmote" , 'age' : 18 , 'tel' : 1348888888 }   In [ 33 ]: list (my_dict.keys()) Out[ 33 ]: [ 'name' , 'age' , 'tel' ]   In [ 34 ]: list (my_dict.values()) Out[ 34 ]: [ 'susmote' , 18 , 1348888888 ]

  

排序,通過sorted()方法按照key的首字母順序進行排序

1 2 3 4 In [ 5 ]: my_dict = { 'name' : "susmote" , 'age' : 18 , 'tel' : 1348888888 }   In [

相關推薦

Python資料型別3集合字典

首先要講到的就是元組 元組其實擁有列表的一些特性,可以儲存不同型別的值,但在某些方面元組又比不上列表 定義一個元組,你可以不用加‘ [ ] ’,你只需用逗號隔開即可 例如 1

python基礎--集合字典

元組的建立 列表:打了激素的陣列 元組:帶了緊箍咒的列表 不可變資料型別,沒有增刪改查 可以儲存任意資料型別 “”" 定義元組 t = (1,1.2,True,'westos') print(t,type(t)) 如果元組裡麵包含可變資料型別,可以間接修改元組內容 t1 =

第6天資料型別字典集合

元組(不可變,有序,多個值) 元組型別就是一個不可變的列表,為什麼會有元組呢?因為在我們寫程式的過程中可能會出現這樣的一個情況,也就是為了防止一些不必要的bug,一些重要的資料別人是可以讀取的,但是不能夠進行更改,這個時候我們就需要用到元組了。對於列表而言,python中對於元祖的儲存相對來說更為儲存空間的。

資料型別字典集合

tuple 元組就是一個不可變的列表#======================================基本使用======================================#1、用途:當我們需要記錄多個同種屬性的值,並且只有讀的需求沒有改的需求時,應該用元組#2、定義方式:在()內用

洗禮靈魂修煉python(7)--集合不可變集合

服務器 .cn mov src 核心 是什麽 報錯 move 之前 前面已經把列表的基本用法講解完 接著講python的幾大核心之——元組(tuple) 1.什麽是元組? 類似列表,但為不可變對象,之前提到列表是可變對象,所謂可變對象就是支持原處修改,並且在修改前後對應的內

Python資料型別

資料型別:元組 元組可以看做不可變的列表,它有列表的大多數特點。元組常量用圓括號表示,例如,(1,2)、('a','b','abc')都是元組。 元組特點 元組的主要特點如下: 元組可包含任意型別的物件。 元組是有序的。元組中的物件可通過位置進行索引和分片。 元組

python集合字典

#################元組################## # 元組: 帶了緊箍咒的列表;             不可變資料型別,沒有增刪改查;              可以儲存任意資料型別; # 定義元組# t = (1, 2.1, 2e+10

python的學習筆記01_4基礎資料型別列表 字典 集合 其他其他(forenumeraterange)

列表 定義:[]內以逗號分隔,按照索引,存放各種資料型別,每個位置代表一個元素  特性:    1.可存放多個值    2.可修改指定索引位置對應的值,可變    3.按照從左到右的順序定義列表元素,下標從0開始順序訪問,有序 、建立列表 只要把逗號分隔的不同資料項,使用方括號[],括起來即可,

Python 3.7.1 基礎 資料型別 列表 字串

序列型別 1.前言 2.序列的通用操作 3. 序列型別 3.1 可變序列型別 3.1.1 列表 List 3.1.1.1 class list([iterable]) 3.1.1.2 s

python回顧(六)——資料儲存(列表集合字典)切片通用運算子

列表 列表的概念   列表是一種儲存大量資料的儲存模型     列表的特點   列表具有索引的概念,可以通過索引操作列表中的資料。列表中的資料可以進行新增、刪除、修改、查詢等操作     列表的基本語法   建立列表: 變數名 = [資料1,資料2,

Python基本資料型別(數字、字串、列表、集合字典

Python基本資料型別: 數字 字串(‘ ‘ 或 “ “括起來;不可修改;可切片或下標檢索) 列表[ ]  (可修改;可切片或下標檢索) 元組( )  (不可修改;可切片或下標檢索) 集合{ }  (無法修改,只能增刪) 字典{ }  (只能改值,不能改鍵;用鍵

Python學習筆記 - 基本資料結構:列表字典集合

序列 序列是具有先後關係的一組元素 序列是一維元素向量,元素型別可以不同 序列是一個基類型別,字串、元組、列表都屬於序列。 序列處理函式及方法主要有: # 判斷某一元素x是否在序列s中 x in s x not in s # 連線兩個序列 s + t # 將序列s複製n

Python的字串列表字典集合之間的型別互轉

字串 與 列表(list) : demo = '123' l_demo = list(demo) print(type(l_demo)) print(l_demo) demo__ = (1,2,3) l_demo__ = str(demo__) print(type(l_demo__)) pr

python字典集合

luchangshan5200python中的字典,元組,集合 -dict -tuple -set dict 字典增刪改查 字典創建 my_dict = {‘a‘:1,‘b‘:2} my_dict {‘a‘: 1, ‘b‘: 2} de8ug = {‘name‘:‘de8ug‘, ‘city

python中的資料型別字典

一、元組:俗稱不可變的列表,又被稱為只讀列表。元組用小括號括起來,裡面可以放任何資料型別的資料,查詢可以,迴圈也可以,切片也可以,但就是不能修改。 注意:如果元組中只有一個元素,一定要加一個逗號,否則就不是元組。 >>> tu = (1,"Tanxu","A") #建立一個元組,用

python語言中的資料型別

資料型別 元組       tuple 元組:不可變型別 用途:元組就是一個不可變的列表,當需要存不改動的值時可用元組 定義方式:在()內用逗號分隔開多個任意型別的元素 t=(1,2.2,'aa',('b','c

python如何將列表字典集合首字母變成大寫 以及其他的大小寫轉換!

我們希望的正常的使用: 下面示例是字串所以可以使用! >>> k = 'good blue sky' >>> k.capitalize() 'Good blue sky' 報錯的是因為你建立的不是字串,可能是一個列表! 類似這樣: &g

Python基本資料型別

元組相當於對列表的二次封裝,以下的練習中列出了元組的特性,結合輸出例項來熟練掌握元組的屬性 練習原始碼: # !/usr/bin/env python # -*- coding:utf8 -*- # 元組:tuple tempStr = """

python中對列表集合字典的分析理解

1.列表(List)      (1)列表一般是由 [ ] 表示,建立一個空列表,是任意物件的序列!      (2)在python中的列表跟清單的道理是一樣的,特點就是:可重複,裡面的型別可不同!型別不同是也是列表跟陣列的最本質的區別!     (3)列表的方法:

二、python 數值型別(字串切片)資料型別

linux下 可以安裝python工具;yum install -y ipython ipython支援 命令補全 數值型別 數值型別分為整形 ,長整形,浮點型,複數行 整形:平常使用的整數 長整型:很大的整數。 type 為 long 浮點:帶小數點的數字 想