- range(stop):計(jì)數(shù)到 stop 結(jié)束僚纷,但不包括 stop
range(start,stop[,step]):返回的是一個(gè)可迭代對象(類型是對象)岖圈,而不是列表類型,從start開始习柠,到stop終止(不包括stop),步長為step
print(range(10))#range(0, 10)
print(range(0,10,1))#range(0, 10)
可以利用list來將返回的可迭代對象變?yōu)榱斜?/p>
print(list(range(0,10,1)))
#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
其中,step也可以為負(fù)數(shù)
print(list(range(0,-5,-2)))
#[0, -2, -4]
可對返回的可迭代對象進(jìn)行指定索引
print(range(10)[3])#3
用來控制循環(huán)是range()函數(shù)的一大用途
for i in range(10):
print(i)
#0
#1
#2
#3
#4
#5
#6
#7
#8
#9
- repr(object):返回包含一個(gè)對象的可打印表示形式的字符串
repr(3+5)#'8'
看到這個(gè)例子字管,是否想起了eval()函數(shù)黄橘,兩者有點(diǎn)相似但有所不同,eval可以對字符串表達(dá)式進(jìn)行數(shù)值計(jì)算悼沈,返回的是數(shù)值贱迟,repr()函數(shù)則與其對應(yīng),對數(shù)值計(jì)算的結(jié)果返回字符串
eval('5+3')#8
但repr()與str()函數(shù)雖同樣轉(zhuǎn)化字符串絮供,處理結(jié)果有所不同
repr()函數(shù)得到的字符串通骋路停可以用來重新獲得該對象,repr()的輸入對python比較友好壤靶。通常情況下obj==eval(repr(obj))這個(gè)等式是成立的缚俏。
obj='I love Python'
obj==eval(repr(obj))#True
obj==eval(str(obj))#報(bào)錯(cuò)