字典,字串

2021-08-26 05:56:42 字數 2782 閱讀 5367

1、在python中

不可變資料型別:整型,字串,元祖

可變資料型別:列表,字典

2、字典的特徵

無序(在字典中順序儲存的取出來卻不一定是順序的)、鍵值不可變且唯一

3、建立字典

#列表建立方式

a = list([1, 2, 3])

b = list((1, 2, 3))

print(a)

print(b)

#字典建立方式

c = dict((('name','jiangqijun'),))

d = dict((("name","jiangqijun"),))

print(c)

print(d)

4、setdefault方法

d = 

#如果某個鍵存在則返回原來的值,且不修改原來的值

print(d.setdefault("age",30))

print(d)

#如果某個鍵不存在則返回新增加的值

print(d.setdefault("name",'jiangqijun'))

print(d)

5、列印所有的鍵值keys()

#獲取所有的鍵值

print(d.keys())

#獲取所有的值

print(d.values())

#獲取所有的鍵值對

print(d.items())

6、修改update

#修改操作

e =

f =

e.update(f)

print(e)

7、刪除操作

#刪除操作del,clear,pop

g =

del(g["name"])#刪除鍵值對

print(g)

print(g.pop("city"))#刪除鍵值對並返回值

print(g)

g.clear()#清空整個字典

print(g)

8、字典排序

第一種方式:sorted+lambda

sorted(d.items(),key=lambda x:x[1])

"""第乙個引數是需要排序的列表,第二個引數是指定key(列表中每一項的第幾個元素)來進行排序。 

解釋這句**:d.items()返回的是乙個列表 [('a', 74), ('b', 90), ('c', 84), ('d', 85), ('e', 64), ('f', 66), ('g', 88)] 

sorted會對d.items()這個list進行遍歷,把list中的每乙個元素,也就是每乙個tuple()當做x傳入匿名函式lambda x:x[1],函式返回值為x[1], 

也就是key=x[1]=tuple()[1]=('a', 74)[1],也就是說按照裡表中每個項的第二個元素進行排序(第乙個是想x[0])

"""第二種方式:sorted函式

可以對列表進行從小到大排序,對於字典{}dict,sorted函式預設只按照dict的key進行排序,所以要對dict進行調整變形。

1、利用zip函式把dict轉換成乙個列表,列表中每個元素都是乙個tuple,tuple大小比較原理是,先比較第乙個元素,第乙個相同在比較第二個。

2、利用sorted函式對轉換後的列表進行排序。

z=zip(d.values(),d.keys())   #[(62, 'a'), (97, 'b'), (87, 'c'), (68, 'd'), (91, 'e'), (76, 'f'), (88, 'g')],然後對這個列表進行sorted排序

sorted(z)

9、字串常用操作方法

#字串

a = "hello"

b = "world!"

#採用下標訪問獲取字元

print(a[0])

#採用切片方式獲取字串

print(a[1:])

#字串的連線方法

print("---".join([a,b]))

#重複輸出*

print(a*10)

#ing關鍵字

print("h"in a)

#格式化%s

print("%s is very good"%"it")

print('\tmy tltle\n'.strip())

#字串的常用方法

str = "hello,world"

#乙個字元出現的次數

print(str.count("o"))

#居中顯示

print(str.center(50,"#"))

#判斷是否以某個字元開始

print(str.startswith("he"))

#查詢某個字元第一次出現的索引位置

print(str.find('e'))

#格式化輸出

print("hello ".format(name="jiangqijun"))

#大小寫

print(str.upper())

print(str.lower())

#strip從左邊以字元切割

print(str.strip('h'))

#替換字元

print(str.replace("ello","i"))

#分割字元為列表

print(str.split(","))

字串,字典

字串常見操作 去除左右兩邊空格 語法 string.strip 去除兩邊空格 string.lstrip 去除左邊空格 string.rstrip 去除右邊空格 字串分割 語法 string.split 按照空格字元分割,返回乙個列表 string.split 分隔符 按照指定分割符分割,返回乙個表...

字典 字串

4.字典 字串 4.1 字典 map是一種較為特殊的資料結構,在任何一種程式語言中都可以看見他的身影,它是一種鍵值對結構,通過給定的key可以快速獲得對應的value。4.1.1 如何定義字典 var m1 map string int m2 make map int inte ce 100 m3 ...

Go 字典 字串

map是一種較為特殊的資料結構,在任何一種程式語言中都可以看見他的身影,它是一種鍵值對結構,通過給定的key可以快速獲得對應的value。4.1.1 如何定義字典var m1 map string int m2 make map int inte ce 100 m3 map string strin...