有人知道如何獲取列表的索引值嗎:
ints = [當我迴圈這個列表時如何獲得它的索引下標?8, 23, 45, 12, 78]
如果像c或者php那樣加入乙個狀態變數那就太不pythonic了.
最好的選擇就是用內建函式enumerate
for i in range (0,len(list)):print i ,list[i]
但是這種方法有些累贅,使用內建enumerrate函式會有更加直接,優美的做法,先看看enumerate的定義:
def enumerate(collection):
'generates an indexed series: (0,coll[0]), (1,coll[1]) ...'
i = 0
it = iter(collection)
while 1:
yield (i, it.next())
i += 1
enumerate會將陣列或列表組成乙個索引序列。使我們再獲取索引和索引內容的時候更加方便如下:
for index,text in enumerate(list)):
print index ,text
在cookbook裡介紹,如果你要計算檔案的行數,可以這樣寫:
count = len(open(thefilepath,『ru』).readlines())
前面這種方法簡單,但是可能比較慢,當檔案比較大時甚至不能工作,下面這種迴圈讀取的方法更合適些。
count = -1
for count,line in enumerate(open(thefilepath,『ru』)):
pass
count += 1
在Pythonfor迴圈中如何獲取迴圈次數?
在python的for迴圈裡,迴圈遍歷可以寫成 for item in list print item 它可以遍歷列表中的所有元素,但是有什麼方法可以知道到目前為止我迴圈了多少次?想到的替代方案是 count 0 for item in list print item count 1 if coun...
已解決 在for迴圈中嵌入if語句,建立陣列
python是個很棒 很簡潔的語言。python可以用for迴圈很簡潔地建立陣列 還可以往裡面巢狀if語句,太棒了!博主突發奇想用一行 寫九九乘法表 目錄1 簡單的用for迴圈建立陣列 2 再多乙個for 3 加入if語句 4 加入else語句 5 示例 用一行 寫九九乘法表 參考 能用一行 寫陣列...
Java增強for迴圈中獲取index
b 前提測試資料 b string data new string listdatalist arrays.aslist data b 普通的for迴圈 b for int i 0 i datalist.size i b 增強for迴圈 獲取index需要定義額外的變數 b int i 0 for ...