-
在python3中,中文字符串和英文字符串無異。
s1?=?'這是中文字符串' s2?=?'this?is?an?English?string' print(s1) print(s2)
查看全部 -
Python的字符串format
字符串format由兩個部分組成,字符串模板和模板數據內容組成,通過大括號
{}
,就可以把模板數據內容嵌到字符串模板對應的位置。#?字符串模板 template?=?'Hello?{}' #?模板數據內容 world?=?'World' result?=?template.format(world) print(result)?#?==>?Hello?World
如果模板中
{}
比較多,則容易錯亂,那么在format的時候也可以指定模板數據內容的順序。#?指定順序 template?=?'Hello?{0},?Hello?{1},?Hello?{2},?Hello?{3}.' result?=?template.format('World',?'China',?'Beijing',?'imooc') print(result)?#?==>?Hello?World,?Hello?China,?Hello?Beijing,?Hello?imooc. #?調整順序 template?=?'Hello?{3},?Hello?{2},?Hello?{1},?Hello?{0}.' result?=?template.format('World',?'China',?'Beijing',?'imooc') print(result)?#?==>?Hello?imooc,?Hello?Beijing,?Hello?China,?Hello?World.
除了使用順序,還可以指定對應的名字,使得在format過程更加清晰。
#?指定{}的名字w,c,b,i template?=?'Hello?{w},?Hello?{c},?Hello?,?Hello?{i}.' world?=?'World' china?=?'China' beijing?=?'Beijing' imooc?=?'imooc' #?指定名字對應的模板數據內容 result?=?template.format(w?=?world,?c?=?china,?b?=?beijing,?i?=?imooc) print(result)?#?==>?Hello?World,?Hello?China,?Hello?Beijing,?Hello?imooc.
查看全部 -
在字符串前面加個前綴
r
,表示這是一個?raw?字符串,里面的字符就不需要轉義了。例如:
r'\(~_~)/?\(~_~)/'
但是
r'...'
表示法不能表示多行字符串,也不能表示包含'
和?"
的字符串。如果要表示多行字符串,可以用
'''...'''
表示:'''Line?1 Line?2 Line?3'''
還可以在多行字符串前面添加
r
,把這個多行字符串也變成一個raw字符串:r'''Python?is?created?by?"Guido". It?is?free?and?easy?to?learn. Let's?start?learn?Python?in?imooc!'''
查看全部 -
如果字符串包含
"
,我們就可以用' '
括起來表示:'Learn?"Python"?in?imooc'
如果字符串既包含
'
又包含":
需要對字符串中的某些特殊字符進行“轉義”,Python字符串用
\
進行轉義。'Bob?said?\"I\'m?OK\".'
注意:轉義字符?
\
不計入字符串的內容中。常用的轉義字符還有:
\n
表示換行\t
?表示一個制表符\\
表示?\
?字符本身查看全部 -
dict的第一個特點是查找速度快,無論dict有10個元素還是10萬個元素,查找速度都一樣。而list的查找速度隨著元素增加而逐漸下降。
不過dict的查找速度快不是沒有代價的,dict的缺點是占用內存大,還會浪費很多內容,list正好相反,占用內存小,但是查找速度慢。查看全部 -
Python的布爾類型
and、 or、 not
因為Python把0、空字符串和None看成False,其他數值和非空字符串都看成True
短路計算
在計算
a and b
時,如果 a 是 False,則根據與運算法則,整個結果必定為 False,因此返回 a;如果 a 是 True,則整個計算結果必定取決與 b,因此返回 b。在計算
a or b
時,如果 a 是 True,則根據或運算法則,整個計算結果必定為 True,因此返回 a;如果 a 是 False,則整個計算結果必定取決于 b,因此返回 b。
查看全部 -
四則運算
加減乘除
取模運算
Python數字支持取模運算,使用百分號
%
表示取模(余數)地板除
得到的結果會忽略純小數的部分,得到整數的部分,地板除使用
//
進行查看全部 -
變量名規則
變量名由大小寫英文字母、數字和下劃線
_
組成變量不能用數字開頭
變量盡量不要和Python關鍵字重合(比如前面學習過的:and、or、not,否則可能導致Python原有關鍵字發揮不出作用)
查看全部 -
Python基礎數據類型
整數:int
二進制數只使用數字0、1表示,在Python中,二進制整數使用前綴
0b
表示,比如:0b0110
,0b1100
。十六進制數除了0~9十個數字以外,還使用a、b、c、d、e、f,在Python中,十六進制使用前綴
0x
,比如:0x12ef
,0xde2431af
。浮點數:float
在Python中,把10用e替代
字符串:str
以''或""括起來的任意文本
布爾值
一個布爾值只有True、False兩種值
用
and
、or
和not
運算空值
用
None
表示查看全部 -
tuple的元素也可以是tuple,請判斷以下定義T的元素中,有多少個tuple。
T?=?((1+2),??((1+2),),?('a'+'b'),?(1,?),?(1,2,3,4,5))
參考答案:
3個
第一個元素(1+2),第三個元素('a'+'b'),計算的結果分別是數字3和字符串ab,不是tuple。查看全部 -
短路計算
在計算
a and b
時,如果 a 是 False,則根據與運算法則,整個結果必定為 False,因此返回 a;如果 a 是 True,則整個計算結果必定取決與 b,因此返回 b。在計算
a or b
時,如果 a 是 True,則根據或運算法則,整個計算結果必定為 True,因此返回 a;如果 a 是 False,則整個計算結果必定取決于 b,因此返回 b。
查看全部 -
在Python中,布爾類型還可以與其他數據類型(字符串,數字等)做 and、or和not運算,請看下面的代碼:
a?=?True print(a?and?0?or?99)?#?==>?99
得到的計算結果不是布爾類型,而是數字99,這是為什么呢?
因為Python把0、空字符串和None看成False,其他數值和非空字符串都看成True,所以:
查看全部 -
println(“hello”)查看全部
-
vfvrfvrvr
查看全部 -
alice_scores?=?[100,89,92] bob_scores?=?[70,65,81] candy_scores?=?[88,72,77] all_scores?=?[alice_scores,?bob_scores,?candy_scores] score?=?all_scores[1][2]?#?==>?81
以上代碼中?
all_scores[1]
得到Bob的最近三次成績的列表,再通過下標[2]
,則可以得到Bob第三次的成績。查看全部
舉報