基礎資料型別補充

2022-05-17 01:59:03 字數 2008 閱讀 3499

字串str

s = "aa111aa"

print(s.capitalize()) # 首字母大寫,只有第乙個字母大寫

print(s.title()) # 每個單詞首字母大寫,單詞中間用特殊字元或中文隔開

print(s.count("a")) # 統計"a"出現的次數

print(s.swapcase()) # 大小寫轉換

print(s.find("a")) # 查詢"a"的第乙個索引,查詢不到的時候返回-1

print(s.index("a")) # 查詢"a"的第乙個索引,查詢不到的時候報錯

列表list

li = [1,2,3,4]

l2 = list("1234") # 定義的一種方式

print(li.count(1)) # 統計1出現的次數

print(li.index(1)) # 查詢1的第乙個索引,查詢不到就報錯

li.reverse() # 原地反轉

li.sort(reverse=true) # 排序,預設公升序,加true就降序

元組tuple

tu = (1,2,3,4,5)

tu1 = tuple("12345") # 定義的一種方式

tu.count(1) # 統計

tu.index(1) # 通過元素找索引,找不到就報錯

字典dict

dic = 

dic1 = dict(k=1,k1=2) # 定義的一種方式

dic.popitem() # 隨機刪除,返回刪除的值,3.6版本後預設刪除最後乙個鍵值對

dic2 = dict.fromkeys("123",1) # 批量建立字典,迭代key,value相同,指向同一記憶體位址

結合set

s = set("1234")  # 定義的一種方式

型別轉換

str => int :字串中必須全部都是十進位制的數字

int => str :直接轉換

str => list :

s = "1234"

lst = list(s) => ["1","2","3","4"]

或用split()切割

list => str :使用join進行拼接,元素中不能有int

list => tuple :直接轉換

set => list :直接轉換

總結:字串 -- 數字 :字串中必須都是十進位制的數字

數字 -- 字串 :直接轉換

列表 -- 字串 :join()拼接--可迭代的物件中不能出現數字

字串 -- 列表 :split()分割

除字典外,容器資料型別都能直接相互轉換

總結

有序: str,int,bool,list,tuple

無序: dict,set

可變: list,dict,set

不可變: str,int,bool,tuple

訪問方式:

直接訪問: int,bool,set

順序訪問:str,list,tuple

鍵訪問: dict

坑人的刪除

li = [1,2,3,4,5]

# 面試題:要求用乙個for迴圈對刪除上述列表索引為奇數字置的元素

for el in range(len(li)-1,-1,-1):

if el % 2 == 1:

li.pop(el)

print(li)

# 盡量不要在for迴圈遍歷列表的同時修改列表本身的大小

# for迴圈迭代字典過程中改變字典的大小會報錯

基礎資料型別補充

列表不能迴圈新增 變成死迴圈 li 1,2,3,4,5 for i in li print li 無法輸出結果2.1 pop 和range len li li 1,2,3,4,5 for i in range len li li.pop print li li 1,2,3,4,5 for i in ...

基礎資料型別的補充

一 join函式的使用 將列表中的內容轉換成乙個字串 列表中的內容僅限於字串 lst 北京 上海 重慶 天津 print join lst 北京 上海 重慶 天津 二 列表的刪除 當需要刪除列表中的元素時 li 北京 上海 重慶 天津 for i in li li.remove i print li...

資料型別補充

資料型別之間的轉換 int bool str tuple dict set int bool str 他們三者時可以轉換的 bool 可以與所有的資料型別進行轉換 所有為空的資料型別轉換成bool 都為false 0 none false print bool bool false str list...