二、操作元祖
三、元祖函式
四、字典
字典函式
元祖是乙個不可變的序列
它的操作方式基本上和列表是一致的
在操作元祖時,把元祖當成乙個不可變的列表就ok
一般當我們希望資料不改時,我們就採用元祖
my_tuplel = () #只要在乙個變數/常量 = ()就是元祖的寫法
print('元祖的型別',type(my_tuplel))
()表示的是乙個函式
()表示乙個可以帶引數/不帶引數的方法
思考?假設函式沒有(),效率怎麼樣?
結果: 在企業工作裡面使用()函式式元祖賦值,不建議省略(),影響資料的效能問題
my_tuple6 = ('邱強強','李四','張濤','李濤')
print('沒有刪除元祖之前的值為:',my_tuple6)
del my_tuple6
#my_tuep6[2]
print('刪除元祖之後的值為:',my_tuple)
思考?delete 和 drop是什麼區別?
(1)delete只能操作表資料,但是不能操作表結構,也不能改變表結構等,只能刪除資料 python的del也是不能操作表結構,只能刪除元祖\list列表中資料!總結:企業優化sql裡面不能使用drop - - -作業:如何優化sql(2)drop執行drop命令將表和表資料徹底刪除,並且drop破壞表結構,會造成記憶體溢位,資料很難維護
my_tuple7 = ('aaa','bbb','ccc')
print('通過擷取元祖1:2的值為:',my_tuple7[1:2])
#備註:元祖的擷取是通過list列表的切片機制操作!
#計算機語言的括號使用規則 ()
#元祖的關鍵字是tuelp
my_tuple7 = (),()
my_tuple8 = ,
print('多維元祖:',type(my_tuple7))
print('多維陣列:',type(my_tuple8))
my_tuple9 =
print('多維列表:',type(my_tuple9))
備註:**(12)**有兩種解釋
值為12
python直譯器在記憶體裡面執行的時候,會按照記憶體12運算元據
my_tuple7 = ('a','b','c','d')
num = len(my_tuple7)
print('my_tuelp的長度',num)
my_tuple8 = (12,123,2,3,555,4587,-55)
num1 = max(my_tuple8)
num2 = max(my_tuple8,my_tuple2)
print(『max的最大值為』,num1)
print(『max的最大值為』,num2)
列表轉化為元祖的特性 - - - 重點面試
列表是有序的,列表可以改變值,元祖有固定位置
元祖的優先順序大於列表,在工作裡面,盡量使用元祖定義資料。
列表存放資料沒有元祖安全、資料沒有元祖易維護,元祖查詢資料的速度比列表快
萬物皆為物件- - - 物件的屬性、方法就屬於元素- - -元祖
my_dict =
字典的核心特性:
字典使用{} - - -為什麼/json{} {}表示鍵值對的寫法,此寫法傳輸資料的速度極快!
字典的關鍵字dict dictionary
字典通過鍵取值 ,鍵不可以重複,值可以重複 - - - map一樣 面試必問(map list set)
字典的鍵和資料庫的id主鍵原理一樣
#字典的鍵是任意的不可改變物件(int、str、bool、tuple…),但是一般我們都會使用str
#mapmap = new map
#備註:python為什麼key也使用str 呢?因為伺服器永遠是字串,- - -膠水語言
d1=
d2=#**具有可讀性
print('通過student2的鍵取值',d2['name'])
print('通過student2的鍵取多個值',d2['name'],d2['age'],d2['***'])
##如果使用了字典中不存在的鍵,會報錯
my_tuple10 =['12','123',1234]
my_tuple11 =(12,12)
#my_tuple12 =my_tuple10 + my_tuple11
#print('my_tuple12是通過列表和元祖拼接結果:',my_tuple12)
my_tuple18 =
print('my_tuple18是通過列表和元組拼接的結果:',type(my_tuple18))
d2 = #**具有可讀性
print('len的個數',len(d2))
print('get方法的作用為:',d2.get('name'))#有值
print('get方法的作用為:',d2.get('name1'))#無值 ----get方法的作用:none----企業大量使用
print(d2.get)
person1=
person2=
print('person1的字典值為:',type(person1))
print('person1的返回次數為:',len(person1))
print('person1的返回次數為:',len(person2))
person3 =
result2 = str(person3)
print('此時person3的型別是:',type(person3))
print('result2的結果是:',result2)
思考?如何獲取person3的值 get key index 的 切片
通過str可以將 [值]一次性輸出,並且不需要型別轉換
str不僅僅是乙個字串
seq = ('name','age','***')
result3 = dict.fromkeys(seq)#formkeys(seq) - - - seq 表示的乙個物件或者乙個引數都可以解釋
print('result3的值為:',result3)#foemkeys(seq) - - -表示的是將字典、元祖裡面的值作為鍵輸出
seq2 =
result4 = dict.fromkeys(seq2)#此方法就是對key的乙個擴充套件,為什麼? formkeys可以處理海量資料
print('result4的值為:',result4)
dict1 =
name = ('name','age','***')
if name in dict1:
print('name在字典裡')
else:
print('name不存在')
# print('name的型別',type(name))
#備註:元祖裡面巢狀字典、列表,對於key-values來講會發生key-values的值的不確定性!
if 'age' in dict1:
print('age在字典裡')
else:
print('age不存在')
print('keys的值為:',dict1.keys())
keys的底層實現原理 - - -可以一次性查詢去所有鍵,為什麼?
優化sql- - -面試必問 like有幾種方法?like的缺點
like查詢資料會產生快取!- - - jd ** 聚美優品 - - -查詢資料(solr)全文檢索
like在運算元據的時候會將資料切片!資料可能不是很完整!- - -不再使用!
select name from emp like name =』% 王』
select name from emp like name =『強%』
select name from emp like name =』%強』
中軟實訓總結 中軟實訓心得
在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自己在以後的途中...
中軟實訓總結 中軟實訓心得
中軟實訓心得 在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自...
中軟實訓總結 中軟實訓心得
在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自己在以後的途中...