7 18 中科實訓day04

2021-09-25 09:17:02 字數 4291 閱讀 3822

二、操作元祖

三、元祖函式

四、字典

字典函式

元祖是乙個不可變的序列

它的操作方式基本上和列表是一致的

在操作元祖時,把元祖當成乙個不可變的列表就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列表中資料!

(2)drop執行drop命令將表和表資料徹底刪除,並且drop破壞表結構,會造成記憶體溢位,資料很難維護

總結:企業優化sql裡面不能使用drop - - -作業:如何優化sql

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 =』%強』

中軟實訓總結 中軟實訓心得

在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自己在以後的途中...

中軟實訓總結 中軟實訓心得

中軟實訓心得 在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自...

中軟實訓總結 中軟實訓心得

在廈門中軟的乙個多月裡,在那裡學習的經歷讓我懷念,難忘,在那裡的每一天都會讓我成長。在中軟的實訓生活中,我深刻體會到了自己專業方面的欠缺和不足,也意識到了作為計算機網路工程專業的學生,要想在以後的職業中嶄露頭角,除了要有很好的專業知識,還必須具備良好的心理素質和善於交流溝通的能力,使自己在以後的途中...