1. 程式人生 > >python —— 資料結構(字串,元組,列表,字典,集合)

python —— 資料結構(字串,元組,列表,字典,集合)

Python 識別符號

1、識別符號由字母、數字、下劃線組成。

2、所有識別符號可以包括英文、數字以及下劃線(_),但不能以數字開頭。

3、識別符號是區分大小寫的。

4、以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入;

5、以雙下劃線開頭的 __foo 代表類的私有成員;

6、以雙下劃線開頭和結尾的_ _ foo__ 代表 Python 裡特殊方法專用的標識,
如 _ _ init __() 代表類的建構函式。

Python 引號

Python 可以使用引號( ’ )、雙引號( ” )、三引號( ”’ 或 “”” ) 來表示字串,引號的開始與結束必須的相同型別的。

其中三引號可以由多行組成,編寫多行文字的快捷語法,常用於文件字串

word = 'word'
sentence = "這是一個句子。"
paragraph = """這是一個段落。
包含了多個語句"""

print 預設輸出是換行的,如果要實現不換行需要在變數末尾加上逗號 ,

input 輸入

name = input('please enter your name: ')
print('hello,', name)

字串 String

1、字串型別是不可變的,所以要改變一個字串就必須通過建立一個新串的方法來實現。

2、不能只改變一個字串的一個字元或者一個子串,然而,通過拼湊一箇舊串的各個部分來得到一個新串是被允許的

unicode字串操作符u/U

  1. unicode字串以u開頭,在計算機記憶體中,統一使用Unicode編碼

  2. 一個字元對應若干個位元組。

bytes字串操作符b/B

  1. bytes字串以b開頭,可用來在網路上傳輸,或者儲存到磁碟上

  2. 每個字元都只佔用一個位元組。即utf-8,可變長編碼,節省空間。

原始字串操作符r/R

  1. 原始字串以r開頭,使用原始字串可以避免字串中轉義字元帶來的問題

  2. 舉例
    開啟readme.txt時出現異常,就是因為’\r’和’\t’被當成不在我們的檔名中的特殊字元。

>>> f = open("D:\windows\temp\readme.txt"
,'r') IOError: [Errno 22] ...
# 所以應在檔案路徑前加上字母‘r’,使用原始字串
>>> f = open(r"D:\windows\temp\readme.txt",'r')
>>> f.readline()
'Hello World!'
>>> f.close()

元組 tuple

1、有序的物件集合

2、元組元素用小括號()包裹,元素的個數及元素的值不可改變,相當於只讀列表。

3、可通過元組下標訪問元素

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

基本操作

建立元組

>>> tup = ('physics', 'chemistry', 1997, 2000);

訪問元組

>>> tup[0] 
physics
>>> tup[1:4]
physics, chemistry, 1997

元組的連線組合

>>> tup1 = (12, 34.56);
>>> tup2 = ('abc', 'xyz');
>>> tup3 = tup1 + tup2;
>>> print tup3;
(12, 34.56, 'abc', 'xyz')

列表 List

1、有序的物件集合

2、列表元素用中括號[ ]包裹,元素的個數及元素的值可以改變。

3、可通過列表下標訪問元素

基本操作

建立list

>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']

訪問list

>>> classmates[0] 
Michael
>>> classmates[1:3]
Michael, Bob

追加元素到list末尾,用append()方法

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

把元素插入到指定的位置,用insert()方法

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

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

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

刪除指定位置的元素,用pop(i)方法

>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']

要把某個元素替換成別的元素,可以直接賦值給對應的索引位置

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

字典 Dict

1、無序的物件集合

2、字典是對映資料型別,由鍵-值對構成,字典元素用大括號{ }包裹

3、不允許同一個鍵出現兩次。建立時如果同一個鍵被賦值兩次,後一個值會被記住

4、鍵必須不可變,所以可以用數字,字串或元組充當,列表就不行

5、可通過鍵訪問元素

基本操作

建立dict

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

訪問dict

>>> dict['Name']
Zara

增加新的鍵/值對

>>> dict['School'] = "DPS School"
>>> dict['School']
DPS School

集合 Set

1、無序且不重複的物件集合

2、重複元素在set中自動被過濾

3、不可以訪問特定的元素

基本操作

建立set(要建立一個set,需要提供一個list作為輸入集合)

>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}

增加元素到set

>>> s.add(4)
>>> s
{1, 2, 3, 4}

刪除元素

>>> s.remove(4)
>>> s
{1, 2, 3}

使用set取並集和交集

>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}

相關推薦

python —— 資料結構字串列表字典集合

Python 識別符號 1、識別符號由字母、數字、下劃線組成。 2、所有識別符號可以包括英文、數字以及下劃線(_),但不能以數字開頭。 3、識別符號是區分大小寫的。 4、以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行

Python入門筆記2 序列字串列表

操作字串的方法: a.索引取值   a='abcde'   a[0]、a[1]取a中元素,但一次只可以取一個。   用+號連線,如,a[1]+a[2]。得‘ab’ b.切片 可以從字串中進行擷取 分正負數,正數表示從左往右取,從0開始;負數代表從右往左取,最後一位為-1

Python 的定義列表的轉換的應用場景

demo.py(元組的定義,元組的基本使用): # 定義元組。如果元組只有一個元素,要在元素後加一個逗號 (5,) 如果不加逗號,直譯器不會將小括號當成元組。 info_tuple = ("zhangsan", 18, 1.75, "zhangsan") #

day5 列表字典集合

排列 auth {} 裏的 快速 log tde 格式 add 列表是用來存放多個值[]內用逗號分隔,列表內元素屋類型限制但凡能用for取出的一個個值的,就能把它放入list列表補充for循環range()和切片用法相同取頭不取尾,步長range用來打印索引和索引對應的值e

詳解列表字典集合

下面我們要了解以下資料型別 元組 列表 字典 集合 一、元組(tuple) 1.元組的建立(可以把元組看作一個容器,任何資料型別都可以放在裡面) 通過賦值方法建立元組 In [5]: t = ("hello",2.3,2,True,{1:"

Python資料結構

棧和佇列 定義:存放資料的線性表 操作:入棧/佇列、出棧/佇列、判斷滿/空 空間複雜度:O(n) 單次操作時間複雜度:O(1) 區別:棧先進後出(FILO)、佇列先進先出(FIFO) 陣列和連結串列(線性表)皆可儲存 指標 (輔助變數):出入元

python資料結構字串方法

1.capitalize():將字串中首字母轉換成大寫,其餘字元轉換成小寫 Str="this is string example from runoob ...wow!!!" print("Str.capitalize():",Str.capitalize())#該方法返回一個首字母大寫的字串

python資料結構字串格式化

字串格式化: 1.簡單運用 字串型別格式化採用format()方法,基本使用格式是:      <模板字串>.format(<逗號分隔的引數>) 呼叫format()方法後會返回一個新的字串,引數從0 開始編號

Python教程補充內容函式中接收列表和lambda的用法——簡明python教程學習筆記

本文大量內容來源於沈老師的簡明python教程,其中夾雜部分個人的理解如有偏頗之處還望海涵。 一. 在函式中接收元組和列表 \quad當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用*和**字首。 這種方法在函式需要獲取可變數量的引數的

pythonpython資料結構——線性表:順序表的實現

前言 這一系列文章將介紹基於python語言的資料結構,主要涉及線性表、字串、棧和佇列、二叉樹和樹、圖、字典和集合、排序等。 線性表及分類 線性表是一類元素序列的抽象,是某類元素的集合,記錄著元素之間的順序關係。python中的list和tuple都支援線性表的需要,只是t

Python字符串、列表字典互相轉換的方法

tuple -c 字符 列表 () lis pri int values #-*-coding:utf-8-*- #1、字典dict = {‘name‘: ‘Zara‘, ‘age‘: 7, ‘class‘: ‘First‘}#字典轉為字符串,返回:<type ‘st

python-day3 (tuple),列表(list),字典(dict)

1.元組 tuple   有序資料,元組資料不可更改,若元組中有列表,可更改元組中的列表值裡的值   元組中以","分開,若只有一個值就不是元組   包含各種資料型別   索引取值:t(2,0.0089,'1','True',(1,2,3,'hello'))   print(t[0])

Python列表字典的遍歷和相互轉化

在Python中元組(tuple),列表(list)和字典(dict)都是經常用到的,它們的遍歷和之間的相互轉換在使用中也非常重要,下面進行相關的總結: 一、元組,列表,字典的遍歷     1.1 元組的遍歷          元組的遍歷藉助 range() 函式,基本思想

資料結構樹和二叉樹的轉換與遍歷

二叉樹的遍歷 先序遍歷(DLR):先遍歷根節點,再遍歷左子樹,最後遍歷右子樹 遍歷結果:ABDHIEJCFG public void PreOrder(Node<T> root)

Python中的“四大才子”字符串、列表字典集合

不可 inf nbsp 創建 重新 指向 分享圖片 table 數據類型 前戲:在python中把數據序列分為可變(mutable)和不可變(immutable)兩種 不可變:string、int、float、tuple 特點

list列表 tuple range操作 dict字典 set集合 及相關操作

list列表 1. 什麼是列表 定義: 能裝物件的物件 在python中使用[]來描述列表, 內部元素用逗號隔開. 對資料型別沒有要求 列表存在索引和切片. 和字串是一樣的. 2. 相關的增刪改查操作(重點) 新增:  1. append() 追加  2. insert(位置,

python3-列表字典

1.Javascript和Php是弱型別的,Python和Java是強型別的。弱型別允許不安全的型別轉換,強型別則不允許。 2.元組,列表,字典 Python的元組與列表類似,不同之處在於元組的元素不能修改。 元組使用小括號: var= (1,2,3...) 列表

如何在函式中接收列表字典

在Python,要用函式接收列表或元組或字典,我們可以採用在這幾種型別的引數前面加上 * 或 ** 即可解決。 在函式中接收元組,程式程式碼如下: #引數前面為 * ,代表這個位置的引數不知道有多少個引數,如果有,則將其儲存為元組 def x(a,b,*c)

Python資料結構列表集合

Python也算是現學現用,針對資料結構,我覺得必須掌握的就這三種:列表,集合,元組 列表[ ]: 列表的申明和訪問 #!/usr/bin/python3 list =[] list1 = ['Google', 'Runoob', 1997, 2000]; list2 = [1, 2,

Python基礎--- Python簡介特點程式碼規範變數運算子條件迴圈語句字串列表字典檔案操作

一、Python簡介 ----------------------------------------------------------- 1.Python是一種解釋型,面向物件,動態資料型別的高階程式語言 2.像Perl語言一樣, Python 原始碼同樣遵循 GPL(GNU