python 基礎資料型別的補充與深淺copy

2022-08-01 02:36:13 字數 2294 閱讀 1194

lst =['吳彥祖','謝霆鋒','劉德華']

s = '_'.join(lst)

print(s) # 吳彥祖_謝霆鋒_劉德華

# join()

"*".join("吳彥祖") # 吳*彥*祖 把傳遞進去的引數進行迭代. 獲取到的每個元素和前面的*進行拼接. 得到的是字串

split() 切割. 切割的結果是列表

# 列表

lst = ['籃球','足球','桌球','網球','電子競技']

lst_new =

for el in lst:

if '球' in el:

# 把要刪除的新增到新的列表裡

print(lst_new) # ['籃球', '足球', '桌球', '網球']

for i in lst_new:

lst.remove(i) # 刪除舊的列表

print(lst) # ['電子競技'] 列印舊列表

# 字典

dic =

# 把要刪除的key儲存在乙個新列表中

# 迴圈這個列表.刪除字典中的key:value

lst =

for k in dic:

# 迴圈列表

# 刪除字典中的內容

for el in lst:

dic.pop(el)

print(dic)

# 坑: 大坑, 神坑

# fromkeys() 幫我們建立字典用的

# 把第乙個引數進行迭代. 拿到每一項作為key和後面的value組合成字典

d = dict.fromkeys("張無忌", "趙敏") # 建立字典

print(d) #

# 坑1: 返回新字典. 和原來的字典沒有關係

dic = {}

d = dic.fromkeys("風扇哥", "很睏")

print(dic) # {}

print(d) #

# 坑2: 如果value是可變的資料型別,

# 那麼其中乙個key對應的value執行的更改操作. 其他的也跟著變

d = dict.fromkeys("胡辣湯", )

print(d) #

print(d) #

# = 

沒有建立新物件, 只是把記憶體位址進行了複製

# 淺拷貝

lst.copy() 只拷貝第一層.

# 深拷貝

import copy

copy.deepcopy() 會把物件內部的所有內容進行拷貝

lst1 = ["胡辣湯", "灌湯包", "油潑麵", "麻辣香鍋", ["長白山", "白洋淀", "黃鶴樓"]]

lst2 = lst1.copy() # 淺拷貝. 只拷貝第一層內容

print(lst1) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓']]

print(lst2) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓']]

print(lst1) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓', '葫蘆娃']]

print(lst2) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓', '葫蘆娃']]

# 引入乙個模組

import copy

lst1 = ["胡辣湯", "灌湯包", "油潑麵", "麻辣香鍋", ["長白山", "白洋淀", "黃鶴樓"]]

lst2 = copy.deepcopy(lst1) # 深拷貝: 物件內部的所有內容都要複製乙份. 深度轉殖(clone). 原型模式

print(lst1) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓']]

print(lst2) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓']]

print(lst1) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓', '葫蘆娃']]

print(lst2) # ['胡辣湯', '灌湯包', '油潑麵', '麻辣香鍋', ['長白山', '白洋淀', '黃鶴樓']]

基礎資料型別補充

字串str s aa111aa print s.capitalize 首字母大寫,只有第乙個字母大寫 print s.title 每個單詞首字母大寫,單詞中間用特殊字元或中文隔開 print s.count a 統計 a 出現的次數 print s.swapcase 大小寫轉換 print s.fi...

基礎資料型別補充

列表不能迴圈新增 變成死迴圈 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...