python的小總結

1.list 列表 [] 放入各種數據類型的數據

2.tuple 元組 () 也可以放多個類型 但是是隻讀. 元組又叫只讀列表.

3.dict 字典 {"name',"哈哈哈"}    鍵值對的形式. 存儲大量的數據. 存的是關係型的數據. 字典內可以存列表.

4.set 集合 {} 也是以大括號的元素 但是 裏面是一個一個元素.

5.切片:顧頭不顧腚: s = "多多多多多多賺賺賺"   s6 = s[0:6]    s6 = s[ : 6] 起始爲0 則不寫0 也行.

6.步長 s6 = s[:5:2] 取0-5 然後 隔兩個去一個字符.

7.s = "liuBingYin"      s1 = s.capitalize()       capitalize 意思是轉換字符串中的大小寫 轉變爲 首字母大寫.

8.s = "liubingyin" s1 = s.center(20,"*") 第一個參數 是兩邊的間距 第二個是 兩邊空出來的部分填充什麼內容.

9.s1 = s.upper() upper 是全大寫.    s1 = s.lower() lower 全小寫.        這兩個用途主要是驗證碼部分.

eg:code = "QaE".

upper() your_code = input("輸入驗證碼,不區分大小寫:").upper()

if your_code == code:

           print("驗證成功")

10.s = "lbylbylbylby"

s1 = s.startwith("l")

s1 = s.startwith("y",3,6)

這個發 在3-6 中間是不是以 y 開頭呢. 返回的都是bool值返回.

數據處理 會用到這個startwith.

11.    swap 大小寫翻轉.          title 非字母隔開的每個單詞的首字母大寫.

12.s = "qwer" find 找元素角標 s1 = s.find("w") 角標是1     index 通過元素找索引,  可切片,  找不到 -1

13.strip 去處前後的空格,換行符,製表符.

14.split 分割 以空格隔開 分割成了列表 s1 = s.split(",",2)

轉換出來的 樣子就是 如果括號內是逗號 就是元素內 是以逗號分割的.

後面的參數是分割次數.被分割的就沒了.

15.  join 在某些情況下,list ---> str l = ["aaa","bbb","ccc"]

        s1 = "".join(l) print(s1)  : aaabbbccc

        形式是 字符串形式.

16.s = "小剛是一個人" s1 = s.replace("小剛","小紅") print(s1)     小紅是一個人

17.len 看字符串總個數.  個  數是20 索引就是19     數出 某個元素    出現的次數.     c1 = s.count("f") print(c1)

18.format 格式化輸出.

1.msg = "我叫{},今年{},愛好{}".format("劉丙寅","26","籃球") {}相當於%s

2.msg = "我叫{0},今年{1},愛好{2},我依然叫{0}".format("劉丙寅","26","籃球") {}相當於%s

3.msg = "我叫{name}今年{age}愛好{hobby}".format(name = "劉丙寅",age = "26",hobby = "籃球") {}相當於%s 不侷限於順序.

19.應該能應用在比如說註冊時候密碼的驗證上面.

判斷全部是數字 isdigit()

判斷全部是字母 isalpha()

判斷是數字或者字母 isalnum()

20.for i  in s:   for循環

 

列表的增刪改查:

增:

形式1:  

append 追加

li = [aa, "bb", 11]

li.append("ddd") print(li)      li = [aa, "bb", 11,"dd"]

形式2  

insert 添加 根據索引在對應的位置添加.

li.insert(1,"哪吒")

形式3:

li = [123, "jkjsdkl", 222]

li.extend("的撒旦的")

print(li)     [123, 'jkjsdkl', 222, '的', '撒', '旦', '的']      迭代追加.

 

刪:

形式1:     根據索引,刪除元素

li = [123, "jkjsdkl", 222]  

li.pop(0)                  

形式2:     按照元素去刪除

 li.remove("123")

形式3:     清空這個列表裏面的內容.

li.clear()

形式4:      del 整個列表全部刪除.

 

改:

形式1:       按照索引去修改.

li[0] ="小六"

形式2:

按照切片去修改. 先將切片的區域內的內容全部刪除 然後再 迭代着添加內容.

li[:3] = "qwer"

 

查:

形式1:      按照索引切片去查找 或者 for 循環查

for i in li: print(i)

形式2:

cou = len(li) 查看元素個數.

形式3:

count 同一個元素 出現的次數.

index 通過元素 找索引 li.index("123")

 

形式4:       sort: 從小到大   排序

l2.sort()  

l2.sort(reverse=True) 加了參數 就是 倒序排列.

無大小之分 根據當前順序進行翻轉排列.

l2.reverse()

 

元組:

1.被稱爲只讀列表 只能查 不能進行增刪改.

元組可以用index len count 兒子不能改 孫子可以改動.

# 元組可以用index len count

兒子不能改 孫子可以改動.

 

tu1 = ("sds","ererer0",111,[111,"222"])

#[]裏面的東西可以改動

tu1[3].append("liubingyin") 

 

range是什麼?

#range 範圍 是一個自定義的數字範圍列表 與for循環結合使用.

# 循環輸入 100 for i in range(0,101):

#滿足顧頭不顧腚的原理. 0 可以取到 101不可以. #print(i)

 

 

#敏感詞的替換

str = "小姐姐代收款附件克里斯丁就發,附件快樂聖誕節"

str = str.replace("小姐姐","*") 

 

字典:

基礎數據類型之一 {} 以鍵值對的形式來進行存儲數據. 字典的增刪改查. key value 的形式 也是映射數據類型.存儲的都是關係型數據.

 

容器類的數據類型:list[], dict{}, tuple().

非容器類的數據類型:str,int,bool.

字典的key 必須是不可變的數據類型. 只能從:str tuple()元素 int bool布爾值.中設置類型.

字典的value 可以是任意的數據類型.

字典的查詢速度非常快. 鍵是唯一的.存在一個hash算法. 字典的鍵都會通過hash表 轉換成數字.

 

字典的增刪改查:

增:

形式1:

dic = { name : "劉丙寅" , age:26}

dic["sex"] = "男"         有就會覆蓋掉原來的數據.沒有的話就會添加數據.

 

形式2:

#設置一個只有鍵沒有值得,進行佔位.

dic.setdefault("sex")

dic.setdefault("sex",24) #有則不做修改,沒有則添加數據.

 

刪:

形式1:

dic.pop("age") #按照鍵去刪除整個鍵值對

dic.pop("age","沒有這個鍵..") #後面增加這個參數 如果字典裏面沒有這個鍵也不會報錯.

 

形式2:

#清空字典 dic.clear()

#隨機刪除 dic.popitem()

#刪除整個字典 del dic

#刪除字典裏面的鍵值對. del dic["name"]

 

改:

dic["sex"] = "男"

#這也叫修改 #update 是針對兩個字典的更改.

 

 

查:

形式1:

dic.get("name") #有則取出來 沒有則返回none 後面添加參數的話, 就返回該參數.

dic = {"name":"劉丙寅","age":26,"name_list":["反面","正面","左面","右面"]}

形式2:

#for循環查詢 dic.keys()

#找出來所有的鍵 放在一個特殊的類型中. 這個類型 類似於列表 但不是列表的容器.

dic.values() dic.items()

#這三個可以for循環 for keys in dic.keys(): print(keys)

dic.keys() dic.values() dic.items()

返回的都是類似於列表的數據類型. 可遍歷 沒有索引. 直接用list將這個包裹 便可轉換爲列表

直接循環遍歷一個字典 就是 去的所有的鍵.

 

is 比較的是內存地址是否相同.

小數據池 只存在於int 和str中 在一定範圍內 如果兩個數值相同.爲了節省內存.公用一個內存地址.

讀取一個文件 或者傳輸一個文件 要先轉換成 bytes類型. 才能傳輸.

 

在文件的存儲或傳輸,編碼是除unicode以外的任意編碼.

utf-8 和 gbk 不能直接轉換 需要用unicode來做承接.

utf-8先轉換爲unicode 解碼(decode) 然後unicde再轉換成gbk 編碼(encode)

 

元組中如果只有一個元素 並且沒有都逗號那麼 該數據類型是對應的元素類型

如果有逗號  那麼該元素就是 元組類型.

("你好",)    和   ("你好")      type 不同

 

dic = dict.fromkeys("abc" ,666)

print(dic)                     效果:{'a': 666, 'b': 666, 'c': 666}

 

enumerate() 函數用於將一個可遍歷的數據對象(如列表、元組或字符串)組合爲一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中.

 

 

dic = dict.fromkeys("abc" ,666)   

Python 字典 fromkeys() 函數用於創建一個新字典,以序列 seq 中元素做字典的鍵,value 爲字典所有鍵對應的初始值。

print(dic)

效果:{'a': 666, 'b': 666, 'c': 666}

 

 

集合:

集合: set 可變的數據類型. 是以{}的形式存在的. 字典也是但是字典是鍵值對的形式. 而集合是一個元素.

空集合:set() 空字典 {}

集合是可變的 但是集合內部的元素 是不能變的 是能是 元組,數字,字符串,boolean值.

集合是無序的.不重複的.

集合作用:

1.去重.    列表扔進去集合中 再拿出來的時候 就是

2.關係測試. set1 = {1,2,3,"abc",(1,2,3),True} print(set1) 

 

集合的增刪查:    (因爲集合是無序的 沒有索引 所以不能修改.)

1.增加:

set1 = {"sds","收到","sdsd","gfg","rtrtrt"}

set1.add("劉丙寅") print(set1)

2.刪除: 按照元素刪除

set1.remove("sds") print(set1)

隨機刪除:

set1 = {"sds","收到","sdsd","gfg","rtrtrt"}

set1.pop() print(set1)

清空: set1.clear()

刪除整體: del set1

查詢: for i in set1: print(set1) print(i)

 

文件操作:

world wps 等 需要知道這個文件的路徑

path 例如 d:\ddd.txt encoding

編碼方式: utf-8 gbk 等

mode 操作方式: 只讀,只寫,追加,讀寫,寫讀.

絕對路徑. f1 = open("d:\xxoo.txt",encoding="utf-8",mode="r") f1.close() f1 產生的一個變量. 又叫文件句柄.

open就是對文件操作用的. open就是python的內置函數. 底層是調用windows的open功能用的.

linux系統也有一個open功能.

windows 這個系統 默認的編碼方式爲 gbk

linux macos :默認編碼格式:utf-8

 

流程: 文件操作:

1.打開文件,產生文件句柄 f1 = open("d:\xxoo.txt",encoding="utf-8",mode="r")

2.對文件句柄產生相應的操作. f1.read()

3.關閉文件. f1.close()

 

相對路徑: 當txt文檔等 放在python上的時候,就用相對路徑.

f1 = open('aaa.txt', encoding='utf-8')

print(f1.read(3))

f1.close()

r模式:read(n) n 是按照字符讀取。

rb模式:read(n) n 是按照字節讀取。

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章