1. 程式人生 > 程式設計 >用JAVA實現單鏈表,檢測字串是否是迴文串

用JAVA實現單鏈表,檢測字串是否是迴文串

建立字典的方式

方式一:

a={'a':1,'b':2,'c':3}

方式二:

a = dict(a=1,b=2,c=3)

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

常用方法:

setdefault()設定值,K存在,獲取當前的值,不存在,就設定進去
update({.....})
get()

dic1 = {"apple":"001", "dog":"002", "cat":"dog", "jack":"ros"}
dic2 = {"郭靖":"黃蓉", "張無忌":"趙敏", "楊過":"小龍女", "apple":"蘋果"}

print(dic.keys()) #返回迭代器 dict_keys(['apple', 'dog', 'cat', 'jack'])
print(list(dic.keys())) #用list直接轉換成列表 ['apple', 'dog', 'cat', 'jack']
print(dic.values()) #同上
print(dic.items()) #dict_items([('apple', '001'), ('dog', '002'), ('cat', 'dog'), ('jack', 'ros')])
print(list(dic.items())) #[('apple', '001'), ('dog', '002'), ('cat', 'dog'), ('jack', 'ros')]

seq = ('z', 'x', 'y')
di = dict.fromkeys(seq, 10) #fromkeys()函式用來構建一個新字典
print(di) #沒有10時鍵預設None{'z':None, 'x':None, 'y':None}
print(di) #{'z':10, 'x':10, 'y':10}
print(dic.pop("apple", "NoKey")) #刪除apple:001 這對元素,返回key對應的值,不存在鍵,就返回預設值NoKey
print(dic.popitem()) #返回並刪除字典中的最後一位鍵值對,如果字典已經為空,卻呼叫了此方法,就報出 KeyError 異常
dic.setdefault("apple", '100') #鍵存在,原樣輸出
dic.setdefault("banana", "香蕉") #鍵不存在,新增進去
dic1.update(dic2) #d1中沒有鍵的就新增進來,d1中有的鍵,其值就用d2中的值替換
kk = dic1.get("apple", "預設") #返回指定鍵對應的值,沒有就返回預設


str(dict)輸出字典可列印的字串表示.
type(variable)返回輸入的變數型別,如果變數是字典就返回字典型別
dict.clear()刪除字典內所有元素
dict.copy()返回一個字典的淺複製
dict.fromkeys(seq[, val]))建立一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值
dict.get(key, default=None)返回指定鍵的值,如果值不在字典中返回default值
dict.has_key(key)如果鍵在字典dict裡返回true,否則返回false,python3沒有該方法
dict.items()以列表返回可遍歷的(鍵, 值)元組陣列
dict.keys()以列表返回一個字典所有的鍵
dict.setdefault(key, default=None)和get()類似, 但如果鍵不存在於字典中,將會新增鍵並將值設為default
dict.update(dict2)把字典dict2的鍵/值對更新到dict裡
dict.values()以列表返回字典中的所有值

字典刪方法常見有三種,作用也不同.下面簡單說下這些方法的格式,具體作用和技巧類的方法在深入學習時會和大家介紹.
del方法:刪除鍵對應的值,del 變數名[鍵名],如果只寫變數名就是刪除此字典
clear方法:清空字典內容,變數名.clear()
pop方法:刪除鍵對應的值,但它會把對值列印輸出後再刪除, d.pop(key)

python實現兩個字典合併

方法一:藉助dict(d1.items() + d2.items())的方法

1 a={'a':1,'b':2,'c':3}
2 b= {'aa':11,'bb':22,'cc':33}
3 dict(a.items()+b.items())
4 # 結果:
5 {'a': 1, 'aa': 11, 'c': 3, 'b': 2, 'bb': 22, 'cc': 33}

方法二:藉助字典的update()方法

1 a={'a':1,'b':2,'c':3}
2 b= {'aa':11,'bb':22,'cc':33}
3 c={}
4 c.update(a)
5 c.update(b)
6 print(c)
7 # 結果:
8 {'a': 1, 'aa': 11, 'c': 3, 'b': 2, 'bb': 22, 'cc': 33}

方法三:藉助字典的dict(d1, **d2)方法

1 a={'a':1,'b':2,'c':3}
2 b= {'aa':11,'bb':22,'cc':33}
3 dict(a,**b)
4 # 結果:
5 {'a': 1, 'aa': 11, 'c': 3, 'b': 2, 'bb': 22, 'cc': 33}

方法四:藉助字典的常規處理方法

 1 a={'a':1,'b':2,'c':3}
 2 b= {'aa':11,'bb':22,'cc':33}
 3 c = {}
 4 for k,v in a.items():
 5     c[k] = v
 6 for k,v in v.items():
 7     c[k] = v
 8 print(c)
 9 # 結果:
10 {'a': 1, 'aa': 11, 'c': 3, 'b': 2, 'bb': 22, 'cc': 33}

python 遍歷字典

遍歷鍵:

1 dict = {'Name': 'Runoob', 'Age': 7}
2 for i in dict:
3     print(i)

遍歷值:

1 dict = {'Name': 'Runoob', 'Age': 7}
2 for i in dict.values()
3     print(i)

遍歷鍵和值:

1 dict.items()
2 for key,value in dict.items():
3     print(key)
4     print(value)