指定 key 與value
**foreach($arr as $key => $value){
echo "{$key}==>{$value}<br>";
}**
也可以只獲取值。
**foreach($arr as $value){
echo "{$value}<br>";
}**
準備一個list:
list = [‘html’, ‘js’, ‘css’, ‘python’]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
if __name__ == '__main__':
list = ['html', 'js', 'css', 'python']
# 方法1
print '遍歷列表方法1:'
for i in list:
print ("序號:%s 值:%s" % (list.index(i) + 1, i))
print '\n遍歷列表方法2:'
# 方法2
for i in range(len(list)):
print ("序號:%s 值:%s" % (i + 1, list[i]))
# 方法3
print '\n遍歷列表方法3:'
for i, val in enumerate(list):
print ("序號:%s 值:%s" % (i + 1, val))
# 方法3
print '\n遍歷列表方法3 (設定遍歷開始初始位置,只改變了起始序號):'
for i, val in enumerate(list, 2):
print ("序號:%s 值:%s" % (i + 1, val))
在go語言中,遍歷資料或切片時可以用range,range會產生兩個值,分別是資料的索引與值:
package main
import "fmt"
func main() {
x := []string{"a", "b", "c"}
for v := range x {
fmt.Println(v) //prints 0, 1, 2
}
}
這種寫法非常不好(雖然沒有報錯),因為for…range的過程中,產生了index(索引)與value兩個值,但是在遍歷的時候,卻沒有顯示地宣告有這index變數,雖然我們此時不用index,時刻養成良好的編碼習慣。
package main
import "fmt"
func main() {
x := []string{"a","b","c"}
for _, v := range x {
fmt.Println(v) //prints a, b, c
}
}
不用就將索引忽略!!!
本作品採用《CC 協議》,轉載必須註明作者和本文連結