1,基礎資料型別,總結補充.
int:bit_lenth()str:
captilze() 首字母大寫,其餘小寫.
upper() 全大寫.
lower() 全小寫.
find() 通過元素找索引,沒有返回-1,有切片.
index() 通過元素找索引,沒有回報錯.有切片
swapcase() 大小寫反轉.
strip() 去除前後端的空格,\n,\t,
strip(
'abc
') 去除前後端的a ,b,c三個元素,
ltrip ,rtrip
title 非字母隔開的部分,首字母大寫
split str--->list 預設以空格(可以設定分隔符),
startswith 判斷s以什麼開頭,返回bool值,可以切片
endswith 判斷以什麼結尾,返回bool值,可以切片
replace(old,new) 預設不寫次數,全體換
center 以其為中心,預設填充物 空格.
count 計算元素出現的次數.
len() 測量字串的長度.
join '''
*''_
'.... .join(interable)
isalpha() 全都是字母組成
isdigit() 全都是數字組成
isalnum() 全都是字母或者數字
'%s' %(name)
name1 = '
taibai ''
%(name)s
' % format
'{}{}{}
'.format(name,age,hobby)
''.format(name,age,bobby)
','.format(age=12,name='
太白')
int數字str字串
s = ''#只能是以至少乙個空格組成的字串(全空格)
print(s.isspace())
tuple元祖
tu = (1)tu1 = (1,)
(tu,type(tu))
(tu1,type(tu1))
tu = ('
alex')
tu1 = ('
alex',)
(tu,type(tu))
(tu1,type(tu1))
tu = ([1,2,3])
tu1 = ([1,2,3],)
(tu,type(tu))
(tu1,type(tu1))
當元組只有乙個元素組成並且沒有',
'則該元素是什麼資料型別,整體就是什麼資料型別.
'333')
print(tu)
list
l1 = [111,222,333,444,555]for i in
range(len(l1)):
#i = 0 i = 1 i = 2 i = 3
(l1)
dell1[i]
print(l1) #
[222,333,444,555] [222,444,555] [222,444]
(l1)
l1 = [111,222,333,444,555] 將索引為奇數字的元素刪除.
l1.pop(222)
l1.remove(1)
方法一:
l1 = [111,222,333,444,555]
l2 =
for i in
range(len(l1)):
if i % 2 ==0:
l1 =l2
(l1)
方法二:
l1 = [111,222,333,444,555]
for i in range(1,len(l1)):
if i <= 2:
l1.pop(i)
(l1)
方法二:
l1 = [111,222,333,444,555,666,777]
#del l1[1::2]
(l1)
l1 = [111,222,333,444,555]
for i in range(len(l1)-1,0,-1):
if i % 2 == 1:
dell1[i]
(l1)
在迴圈乙個列表時,如果要是刪除某些或者某類元素,容易出錯.
fromkeys()
dic = dict.fromkeys('
abc','
alex')
(dic)
dic1 = dict.fromkeys([1,2,3],)
(dic1)
alex')
(dic1)
dic =
不可變的資料型別:可雜湊
for i in
dic:
if'k'
ini:
deldic[i]
l1 =
for i in
dic:
if'k'
ini:
(l1)
for k in
l1:
deldic[k]
(dic)
在迴圈乙個字典時,如果刪除某些鍵值對,可能會報錯.
資料型別之間的轉化:
int
<--->str
int
<--->bool
str
<--->.bool
split
str
<------>list
join
tuple
<--->list
l1 = [1,2,3]
tu =tuple(l1)
l2 =list(tu)
(tu,l2)
dict專屬型別:與list轉換
dic =
(list(dic.keys()))
(list(dic.values()))
print(list(dic.items()))
2,深淺copy.
l1 = [1,2,3,4]l2 =l1
(l1,l2)
對於賦值運算,就是共同指向乙個記憶體位址.
s1 = '
alex
's2 =s1
s1 = '
alex2
(s1,id(s1))
(s2,id(s2))
copy
l1 = [1,2,3]
l2 =l1.copy()
(l1,id(l1))
(l2,id(l2))
l1 = [1,[22,33],2,3]
l2 =l1.copy()
(l1,id(l1))
(l2,id(l2))
l1 = [1,[22,33,],2,3]
l2 =l1.copy()
print(l1,id(l1),id(l1[1]))
print(l2,id(l2),id(l2[1]))
對於淺copy來說,第一層都是獨立的記憶體位址,從第二層開始,都是指向同乙個記憶體位址,一變都變.
import
copy
l1 = [1,[22,33,],2,3]
l2 =copy.deepcopy(l1)
print(l1,id(l1),id(l1[1]))
print(l2,id(l2),id(l2[1]))
對於深copy,無論多少層,在記憶體中都是兩個獨立的記憶體位址.
l1 = [1,[1,2],2,3]
l2 = l1[:] #
是淺copy
(l1,l2)
l2 是什麼?
基礎資料型別補充
字串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...