字典字串就是乙個由單引號或者雙引號或者三引號引起來的字元集合,例如:『你好』,"helloworld"等都是字串。
因為字串是有』'或者"",那麼,當字串本身就含有這些符號時,就需要轉義字元"",例:
a =
'i\'m a student'
#如若沒有轉義,則到 i 時就是整個字串,後面的字元將不屬於a
print
(a)# i'm a student
「」 除了可以轉義單雙引號外,還有其他作用:
\\ 轉義斜槓
\n 換行
\t 製表符,相當於tab
\r 回車
當然,除了使用\來轉義以外,還可以使用r來保持原字串,一般多用於路徑,中間若有』或」則不適用,例:
a =
'e:\\download'
b = r'e:\download'
print
(a)print
(b)# e:\download
# e:\download
三引號引起來的字串中間可以換行,例:
a =
'''12
3456
78'''
print
(a)# 12
# 34
# 56
# 78
切片的索引值可正可負,正數時從左往右從0開始,負數時從右往左從-1開始,再利用「+」可實現拼接效果,例:
a =
"hello world"
b ="my name is xiaoming"
print
(a[:5]
)print
(b[-8:
-1])
print
(a[:5]
+" "
+b[-8:
-1])
# hello
# xiaomin
# hello xiaomin
a =
"hello world"
b ="my name is xiaoming"
c ="0011"
d =" abc "
print
(a.capitalize())
# hello world,將字串的第乙個字元轉換為大寫
print
(b.lower())
# my name is xiaoming,字串中所有大寫字元為小寫
print
(a.upper())
# hello world,字串中的小寫字母為大寫
print
(b.swapcase())
# my name is xiaoming,字串中大寫轉換為小寫,小寫轉換為大寫
print
(a.count(
"l",0,
6))# 3,返回"3"在 a 裡面,索引在0-6(不包括6)之間出現的次數
print
(a.endswith(
"world"))
# true,檢查字串a是否以指定子字串 world 結束
print
(b.startswith(
"is"))
# false,檢查字串b是否以指定子字串 is 開始
print
(a.find(
"o")
)# 4,檢測 o 是否包含在字串中,如果包含,返回開始的索引值,否則返回 -1
print
(a.rfind(
"o")
)# 4,檢測 o 是否包含在字串中,如果包含,返回開始的索引值,否則返回 -1(從右查詢)
print
(c.isnumeric())
# true,檢查字串是否都是以數字組成的
print
(c.ljust(8,
'0')
)# 00110000,返回乙個原字串左對齊,並使用fillchar(預設空格)填充至長度width的新字串
print
(c.rjust(8,
'0')
)# 00000011,返回乙個原字串右對齊,並使用fillchar(預設空格)填充至長度width的新字串
print
(d.lstrip())
# abc ,截掉字串左邊的空格或指定字元
print
(d.rstrip())
# abc,刪除字串末尾的空格或指定字元
print
(b.replace(
"xiao"
,"da",1
))# my name is daming,把 將字串中的xiao替換成da,替換不超過1次
print
(b.split())
# ['my', 'name', 'is', 'xiaoming'],帶引數預設是以空格為分隔符切片字串,如果num引數有設定,則僅分隔num個子字串,返回切片後的子字串拼接的列表。
a =
" name is "
.format
("my"
,"xiaoming"
)print
(a)# my name is xiaoming
符 號 描述
%c 格式化字元及其ascii碼
%s 格式化字串,用str
()方法處理物件
%r 格式化字串,用rper(
)方法處理物件
%d 格式化整數
%o 格式化無符號八進位制數
%x 格式化無符號十六進製制數
%x 格式化無符號十六進製制數(大寫)
%f 格式化浮點數字,可指定小數點後的精度
%e 用科學計數法格式化浮點數
%e 作用同%e,用科學計數法格式化浮點數
%g 根據值的大小決定使用%f或%e
%g 作用同%g,根據值的大小決定使用%f或%e
字典 是無序的 鍵:值(key:value)對集合,鍵必須是互不相同的(在同乙個字典之內)。
dict 查詢和插入的速度極快,不會隨著 key 的增加而增加,但是需要占用大量的記憶體,簡單來說,就是以記憶體來換取插入查詢速度。字典是以{}將所有的鍵值對綁在一起,再用,將每乙個鍵值對分隔開,最後以:來區分鍵和值,例:
a =
print
(a)#
b =dict((
(1,"a"),
(2,"b"),
(3,"c"),
(4,"d"))
)print
(b)#
c =dict
(a='a'
,b='b'
,c='c'
,d='d'
)print
(c)#
a =
('a'
,'b'
,'c'
)b =
dict((
(1,"a"),
(2,"b"),
(3,"c"),
(4,"d"))
)print
(dict
.fromkeys(a,(1
,2,3
)))# fromkeys用於建立乙個新字典,以序列 a 中元素做字典的鍵,value 為字典所有鍵對應的初始值
print
(list
(b.keys())
)# [ 1, 2, 3, 4] , keys()返回乙個可迭代物件,可以使用 list() 來轉換為列表,列表為字典中的所有鍵
print
(list
(b.values())
)# ['a', 'b', 'c', 'd'] ,values()返回乙個迭代器,可以使用 list() 來轉換為列表,列表為字典中的所有值
print
(tuple
(b.items())
)# [(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')],items()以列表返回可遍歷的 (鍵, 值) 元組陣列
print
(b.get(2)
)# b,get(key, default=none) 返回指定鍵的值,如果值不在字典中返回預設值
print
(b.pop(3)
)# c,pop(key[,default])刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key 值必須給出。若key不存在,則返回 default 值
del b[2]
print
(b)# ,del dict[key] 刪除字典給定鍵 key 所對應的值
print
(b.popitem())
# (4, 'd'), popitem()隨機返回並刪除字典中的一對鍵和值,如果字典已經為空,卻呼叫了此方法,就報出keyerror異常
print
(b.clear())
# none,clear()用於刪除字典內所有元素
print
(b.copy())
# {},copy()返回乙個字典的淺複製,id不同
c =d =
c.update(d)
print
(c)# ,update(dict2)把字典引數 dict2 的 key:value對 更新到字典 dict 裡
Python學習第五天
1 關於print,使用print方法列印多個表示式也是可行的 print age 12 age 12 2 別名,如果需要引用的方法名出現重複時可以使用別名 from math import sqrt as foobar 3 多個賦值操作可以同時進行 x,y,z 1,2,3 print x,y,z ...
第五天學習python
這其實也不是一天學習的,而是週末和周一一起的。週末學習了如何建立自己的module,記憶如何使用dir 函式。周一初步學習第九章。資料結構。python中主要有三種內建資料結構 列表,元組,字典。list是處理一組有序專案的資料結構,在每個專案中用逗號隔開。列表中的專案包括在方括號中,乙個列表建立之...
學習Python第五天
與python相處的第五天 前言 emmmm,剛才想起來要說什麼了但是忘記了,不過今天還是在某站上看到幾句話先分享一波。只許成功,不許失敗 by天界支援兵 我們的命運,就交給你了 by天界支援兵 羔羊所到之處,必有惡狼隨行 永獵雙子 千珏 你 啟發了我!by戲命師 燼 中二到此結束 進入正題 pyt...