00.可以直接到幕布逾一,查看詳細代碼片段及運行結果
0.本文結構脈絡圖
1.Python環(huán)境搭建
2.Python初始印象
2.1縮進:python有著嚴格的縮進要求
tab縮進怨规,shift+tab反縮進
enter鍵確定下一行正確的輸入位置
2.2變量與常量
【0】變量Python的變量類型是由變量值決定的
和Java,C語言等不同锡足,Python定義變量直接寫波丰,不需要指定變量類型舶得,賦值后才知道變量類型
【1】Python語句最后不需要加分號作為結尾,Python語句是以換行為語句皆為
【2】變量命名和C語言類似沐批,變量名以字母纫骑、數字、下劃線組成珠插,但不能以數字開頭
【3】不能只使用關鍵字命名(例如,list_w,str3,tuple_是可以捻撑,直接list,str,tuple是不行的)
#給變量賦值為數值100缤底,則num為整型
num = 100
#給變量賦值為字符創(chuàng)'100',則num為字符串類型
num = '100'
常量:例如數學中的圓周率π江解,上面例子中賦值給變量num的100徙歼,'100'都是常量
2.3注釋犁河、單引號與雙引號
注釋快捷鍵:Ctrl+/
單行注釋
#這是單行注釋
#這
#是多個
#單行注釋
多行注釋:【注意】多行注釋和多行字符串一樣魄梯,注意區(qū)分
"""
這是
多行
注釋
"""
'''
這也是多行注釋
'''
單引號和雙引號混用:一定要嵌套分隔使用
2.4輸入酿秸、輸出、占位符
輸入:input()
輸出:print()
占位符:%d,%s,%r 分別代表整型辣苏,字符串類型,任意類型
2.5方法定義與調用
#定義
def function_plus(a,b):
print(a+b)
#調用
function_plus(2,3)
#運行結果
5
2.6類和對象
類:具有相同特點的一類事物
對象:對象是類的實例
2.6.1類和對象的關系
【1】類是對象的抽象化煌张,對象是類的具體化
【2】類和對象的關系是相對來說的
【3】對于面向對象的語言來說:萬物皆對象
2.6.2類的創(chuàng)建退客,對象的實例化,類的方法的調用
類名的寫法遵循駝峰命名法(例如:AbcDef),不指定繼承類管闷,就默認繼承基類object窃肠,一個類中一般定義多個方法,方便調用管理
#定義一個名為PrintSometing的類冤留,包括兩個方法print_a(),print_b(strx),一個帶參數,一個不帶參數
class PrintSometing(object):
def print_a(self):
print('改革春風吹滿地糯而,')
def print_b(self,strx):
print('strx人民真爭氣泊窘!' %s)
#實例化一個對象laowang
laowang = PrintSomething()
#通過老王這個已經實例化的對象,就可以調用類PrintSomething中定義的方法了
laowang.print_a()
laowang.print_b('中國')#這里傳入字符串'中國'
#運行結果
改革春風吹滿地烘豹,
中國人名真爭氣!
2.7條件祭芦、循環(huán)語句
if else憔鬼,while等條件語句
【注意】Python并沒有do while循環(huán),也沒有switch case條件判斷
2.8循環(huán)中斷break轴或,continue
break:直接跳出整個循環(huán)
continue:結束當前這一次循環(huán),開始下一次循環(huán)
2.9異常處理
try:
#可能出現(xiàn)異常執(zhí)行的代碼
except:
#出現(xiàn)異常后執(zhí)行的代碼
finally:
#不管有無異常都會執(zhí)行的代碼
3.序列
3.1列表list[]:有序避矢,長度囊榜,內容可變
#-------------------------------創(chuàng)建列表------------------------------------------
numlist = [1,99,0]
mixlist = [1,'2','aa','中國']
mixlist1 = [0,[1,100],(9,0,"xx"),100]
#-------------------------------輸出列表-------------------------------------------
print(numlist)
#-------------------------------常用方法-----------------------------------------
list.sort() #排序砂沛,只能對列表元素是純數字類型的列表排序曙求,默認升序
list.reverse() #反轉映企,位置顛倒静浴,與大小排序無關,并不按大小排序
list.insert(i,x) #插入苹享,i表示插入的位置(索引),x表示想要插入的值
list.copy() #復制
list1.append(list2) #追加囤攀,將list2作為一個整體宫纬,追加到list1后面
list1.extend(list2) #擴展,將list2中的元素逐個加入到list1后面
list[i] = x #將索引為i的元素的值改為x
list[i,j] = x,y,z... #根據區(qū)間(左閉右開)批量更改多個元素的值
del list[i] #刪除下標為i的元素
list.clear() #清空列表漓骚,但保留了列表的格式(數據類型)
3.2元組tuple():有序蝌蹂,長度胚委、內容【不】可變
元組,這里做個了解就好艘希,不深究
#-------------------------------創(chuàng)建元組------------------------------------------
nu_tuple = (1,'100',"哈哈")
#-------------------------------輸出元組------------------------------------------
print(nu_tuple)
3.3字符串str'':有序,長度佳遂、內容【不】可變
#-------------------------------創(chuàng)建字符串------------------------------------------
str1 = '10000'
#-------------------------------輸出字符串------------------------------------------
print(str1)
#-------------------------------常用方法---------------------------------------------
str(object) #將其他類型變量,強轉為字符串類型
num = 10
str(num) #這時的num就變成了字符串類型
#替換所有符合要求的內容凤壁,例如:"hello".replace(l,x)將hello中所有的l替換成x
str.replace(old,new)
#【這里有一個深坑】那原來存“hello”的字符串變量的值是不是變成了“hexxo”拧抖?
#答案是不會,它的值還是“hello”唧席,為什么呢嘲驾?因為字符串是【不可變序列】迹卢,無論如何改變不了它原有的值
#replace()方法改變的只不過是一個原字符串的副本,副本會變成“hexxo”
str.capitalize() #將字符串首字母變成大寫誊垢,其他非首字母有大寫的全部變成小寫
str.split('分割符') #按分割符拆分字符串喻杈,例如'hello world !'.split('o'),將這個字符串按字符o分割成3段
'拼接符'.join(list) #jion()拼接方法筒饰,將某些字符串按拼接符連接起來,例如''.join(['h','ell','o'])业栅,就是用null來連接三個字符串元素谬晕,結果為“hello”
str.upper() #將字符串全部變成大寫
str.lower() #將字符串全部變成小寫
str.startwith('xx') #返回布爾值,字符串是否以xx開頭
str.endwith('xx') #返回布爾值攒钳,字符串是否以xx結尾
str.isnumeric() #返回布爾值,字符串的值是否是純數值類型(例如文兢,'100'就是純數值型字符串)
str.isalpha() #返回布爾值焕檬,字符串的值是否是純字母類型
3.4序列的通用操作:主要是查詢相關的操作
點擊查看,詳細代碼片段及運行結果
存在性(in,not in )返回布爾值
print('h' in 'hello') #True
print('he' in 'hello') #True
print(0 not in [2,4,0,'hello']) #False
print([1,2] not in [1,2,3,4]) #True
print('開掛' in ('沒','有','開掛')) #True
訪問指定范圍[]
print('hello'.[1]) #e
print('hello'.[1:3]) #el
print([1,2,'xx','哈哈',100,'99'][2]) #xx
print([1,2,'xx','哈哈',100,'99'][2:5]) #['xx','哈哈',10]
序列連接(+)
print([1]+[2,3]) #[1,2,3]
print((1,2)+(3,4)) #(1,2,3,4)
print('hello'+' '+'Python') #hello Python
長度len()
print(len('python')) #6
print([1,2,'python']) #3
最大值max()兼呵、最小值min()
print(max('python')) #p
print(max('p','y','t','h','o','n')) #p
print(max([1,100,0])) #100
#最小值類似腊敲,值得注意的是,相同類型的值比較才有意義兔仰,例如:數字1和字母x比較就沒有意義
求和sum(),只針對整型(數值類型)
print(sum([1,2,3])) #6
print(sum(1,100)) #101
元素在序列中第一次出現(xiàn)的位置(索引)忍法,index(subelement)
print('helloele'.index('e')) #字母e第一次出現(xiàn)的位置下標,1
print([1,'0','x','xx'].index('x')) #2
統(tǒng)計值相同的元素出現(xiàn)的次數count()
print('hello world!'.count('o')) #統(tǒng)計字母o出現(xiàn)的次數勉失,2
print([1,233,4,0,1,23,1].count(1)) #3
3.5序列中的數據類型轉換
點擊查看原探,詳細代碼片段及運行結果
查看順序:序列——序列中的數據類型轉換
#-----------------------數據類型查看type()----------------
print(type(0)) #<class 'int'>
print(type('0')) #<class 'str'>
print(type([0])) #<class 'list'>
print(type((0))) #<class 'tuple'>
print(type({})) #<class 'dict'>
#以下4種轉換直接去幕布查看吧,鏈接在上面
#-----------------------tuple -----> list :list(tuple)----------------
#-----------------------list -----> tuple :tuple(list)----------------
#-----------------------list -----> str :str(list)----------------
#-----------------------str -----> list : list(str)----------------
4.映射
點擊查看徒蟆,詳細代碼片段及運行結果
查看順序:映射
4.1創(chuàng)建方法
查看順序:映射——創(chuàng)建字典
4.2常用方法
查看順序:映射——常用方法