Python語言基礎

2021-09-11 18:03:45 字數 4560 閱讀 1957

my_string ="hello, world!"

1、len()  獲取字串長度 :len(my_string )     #13

2、find()  查詢子字串 : my_string.find("w")    # 7   

若多次出現,則返回第一次出現的位置;若查詢兩個字串,則返回第乙個字元出現的位置;若結果為負數,則表示查詢的字元沒有出現在字串中。

3、count()   子字串出現的次數 : my_string .count("l")    # 3

4、in 和not in 是否包含子字串    "hello" in my_string    #true

5、replace()   字串替換   my_string.replace("o", "-")    # "hell-, w-rld!"      

my_string.replace("o", "")    # "hell, wrld!"

my_string.replace("8", "*")    # "hello, world!"

6、child=my_string.split(",")   #["hello","world!"]

執行以上操作不會對原字串產生影響

\"  表示  "

\n            換行

\t              製表符tab

輸出    字串要用' 或者" 包圍起來

print("字串要用'或者 \"包圍起來 ")

轉義字元:轉換字元原本的意義

r"..."表示原始字串

c:\test路徑   r"c:\test路徑" 

"""建立多行字串

將其他型別資料按照指定格式轉換成字串

f-string(python 3.6++才有)     result=f"小明今年歲了!"或f"小明今年歲了!"

format()        result="你好{},今年{}歲了!".format(name,age)     {}為佔位符,放age

以:開頭對數字進行格式化

[[填充]對齊][符號][寬度][.精度][型別]

以上設定,要注意先後順序

pi:.2f   .2表示保留兩位,f表示float型別

pi:.2% -->   314.15%

a=25   a:b --> 11001  b表示二進位制,o八進位制,x十六進製制

and  or  not 

if  else  elif

if語句中可以新增elif處理額外的判斷條件,else處理上述條件外的其他情況

if a:

**...

elif b:

**...

else:

**...

列表下標從0開始,可以使用下標獲取元素  my_list[2]

列表頁可以使用負數下標     my_list[-1]表示最後乙個元素

可以使用[start:end:step]對列表進行擷取  my_list[1:4]

a=  a是空列表

字串是不可變型別,列表是可變資料型別

使用加法+ 拼接兩個列表

使用乘法* 重複某個列表

使用reverse()反序列表,會改變原列表

max()取列表中最大的元素  max(a)

min()取列表中最小的元素   min(a)

sort()排序    a.sort()會改變列表

len()    長度

in  not in判斷元素是否在列表中

a[4],a[5]=a[5],a[4] 交換位置

s1=a.split(",")按逗號拆分

s2="".join(a)  把列表合併成乙個字串 ""內可加*等符號

a.insert(1,"hi")   hi加到下標為一的位置,當下標為負數是,先把負數轉為正數再倒數,加到列表中

a.extend([5,6,7])   把5,6,7依次加到列表末尾,加表示按列表插入,不加表示按字元插入

a.pop()移除列表最後乙個元素

a.pop(2),del a[2] 刪除下標為2的元素

a.remove("b") 將b元素移除

a.clear()  清除列表

a=(1,2,3)

元組也是一種有序容器,也使用下標索引元素,也可以擷取,in,  not in ,max,min,+,*,與列表不同的是,元組是不可變型別,沒有增刪改,只能查

系統對元組處理比列表高,元組可做為字典的key列表不可以,元組可以同時給多個元素賦值

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

使用range()可以快速生成指定範圍內的列表元素。

1.range(end) 生成0-end之間的整數,不包含end

l3=list(range[100])    #

2.range(start,end) 生成start和end之間的整數,不包含end

range(4,12)    #4,5,6,7,8,9,10,11

3.range(start,end,step)生成star到end之間的整數,不包含end,並且每隔step隔數字生成乙個數字

range(3,9,2)    #3,5,7

l=[2,4,6,8,10]

for迴圈

for item in l

print(item)

pass 就是乙個佔位符,可以保證格式不報錯,但是不執行。

for _ in range(10)

print("python")       #重複列印十遍python,_ 表示沒有名字,上面item為起的名字

while迴圈

while 條件表示式:

迴圈體...

迴圈中使用break可以終止整個迴圈

迴圈中使用continue可以終止本輪迴圈,繼續下一輪迴圈

使用for迴圈可以準確控制迴圈次數

不確定迴圈次數但知道迴圈結束條件時,可以使用while迴圈

可以快速構建新的資料序列

[表示式 for 變數 in 列表]

l1=l2=[i*2 for i in l1]   #[2,4,6,8]

l=[i//2 for i in range(10) if i %2==0]

l=[str(i) for i in range(10) if i %2==0]

l=[i for i in "hello"]    # ['h','e','l','l','o']

print("b","a",18,sep="-")   #b-a-18

print("b","a",18,end="-")   列印完以後,結束符後加的東西,如果不寫就是換行

print(f"*=") 表示i*j的寬度是2

字典dictionary也是一種可變容器型別,可以儲存任意型別物件

字典中的元素以鍵值對key-value的方式儲存

字典中的鍵必須是唯一的不能重複,必須是不可變型別

d={}    #空字典

d=d=

#查d["北京"]   #22 要確保在字典中,否則會報錯

name=d.get("瀋陽") 

name=d.get("瀋陽",-1)   若不在字典中,把-1賦值給name,字典本身不會發生變化

name=d.setdefault("aa") 

name=d.setdefault("aa",-1)   若不在字典中,會直接把aa和-1加到字典中

#改d["北京"]=20  #d=

#增d["廣州"]=23  #d=

d.update()    update後加的是字典,把字典中的所有元素都加入到d中

#刪d.pop("北京")   #d=  要確保在字典中,否則會報錯

v=d.pop("北京",-1)  表示如果d中有北京就把北京刪除,並把-1賦值給v,若沒有北京,只把-1賦值給v

d.clear() 清空字典

#獲取地點的長度

len(d)

#把字典轉換為字串

str(d)

#判斷指定的key是否包含在字典中

"廣州" in d     "廣州" not in d

字典也是可迭代物件(可以每次只獲得乙個元素),可以使用for遍歷

#遍歷所有的鍵key

for k in d.keys()

#遍歷所有的值value

for v in d.values()

#遍歷所有的鍵和值key-value

python語言基礎 Python語言基礎與應用

spcontent 本課基於主講教師在北京大學講授資料結構與演算法課 python版 的多年教學實踐經驗,面向零程式設計基礎的大學生和社會公眾,全面講授python語言基礎,培養學生計算思維的能力,並講解python語言中經典的擴充套件模組,讓學生能用python語言解決各種常見問題。課程團隊 課程...

python語言繼承 Python語言基礎

類的繼承 物件導向的程式設計帶來的主要好處之一是 的重用,實現這種重用的方法之一是通過繼承機制。繼承完全可以理解成類之間的型別和子型別關係。繼承語法為class 派生類名 基類名 基類名寫作括號裡,基本類是在類定義的時候,在元組之中指明的。派生類的宣告,與他們的父類類似,繼承的基類列表跟在類名之後,...

python語言基礎

sys.maxint 9223372036854775807得到的結果為2 63 1,其實上得到2 31 1還是2 31 1取決於你的作業系統。見python原始碼的misc history sys.maxint is the largest python int,which is actually...