說來慚愧,入行1年多一直沒搞懂九九乘法表的第二層for循環,for j in range(1,i+1),它為什么要i+1。直到今天面試官讓我說99乘法表實現的具體代碼,才忽然之間懂了。
為什么內層for循環需要加1?
原因:外層的range函數(1,10)只能取到9,內層的range(1,i),i只能取到8,因此i需要加1,range(i,i+1),i才能取到9。
for i in range(1,10): for j in range(1,i+1): print("{0}*{1}={2}".format(i,j,i*j),end="\t") print()
for循環實現九九乘法表代碼:
運行結果:

info_list = [
["張三",20,10000,"成都"],
["李四",21,20000,"北京"],
["王五",22,30000,"合肥"],
]
for i in range(len(info_list)): # todo i的值為0,1,2
for j in range(len(info_list[i])):
# len(info_list[i]),i為0時,從第0個列表開始遍歷,info_list[0]里面有4個值,因此j的值為0,1,2,3。
print(info_list[i][j],end="\t")
print()
java的也差不多:
package com.sxt; public class JiuJiuDemo { public static void main(String[] args) { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(i + "*" + j + "=" + (i * j) + " " + "\t"); } System.out.println(); } } }
js的也一樣:
<script>
for (var i = 1;i<=9;i++){
for (var j = 1;j<=i;j++){
document.write(i + "*" + j + "=" + j * i," ");
}
document.write("<br>");
}
</script>
