主要解决什么样的问题:具有重复性、规律性的问题
循环四要素:
循环的开始(从第1步开始;从第1步开始/从起点开始)
循环的继续条件(还没走到第10步;没有碰到墙/就是看距离)
循环体(走的每一步;走的每一步)
循环的步长/间隔/周期/进度(步数的统计;距离的统计)
//打印1~100
for (①int i = 1; ②i <= 100; ④i++) {
③System.out.println(i);
}
①->②->③->④->②->③->④->②->③->④->②不满足为止
int i = 1;
for (;i <= 100;) {
System.out.println(i);
i++;
}int i = 1;
while (i <= 100) {
System.out.println(i);
i++;
}
==>
Python中
for i in range(11):
print(i)
"""
range(n) : 取值范围是[0,n) 步长默认为1
0 1 2 3 4 5 6 7 8 9 10
python中没有括号概念,必须缩进
i
循环的开始:0
循环的继续条件:i < n
循环体:print(i)
循环的步长:步长默认为1
"""
for i in range(2, 10):
print(i)
"""
range(a, b):取值范围[a, b) 步长默认1
"""
for i in range(2, 13, 2):
print(i)
"""
range(a, b, c):取值范围[a, b) 步长默认2
"""
print("="*12)
for i in range(100, 1):
print(i)
for i in range(100, 10, -10):
print(i)
"""
range(a,b,c)
如果c > 0, a < b 才是有效范围 递增
如果c < 0, a > b 才是有效范围 递减
# 特殊的 结合序列去使用 遍历序列中每一个元素
for i in "abcdefg":
print(i)
"""
******
******
******
******
******
"""
for i in range(5):
print("******")
print("=" * 10)
for i in range(5):
for j in range(6):
print("*", end = "") //print默认换行,放end可使换行变为空格
print()
print("=" * 10)
"""
*
**
***
****
*****
******
"""
//不能放6,外层会影响里层,【0,6)从第0层开始的话,里层会少一个0
for n in range(6):
for i in range(n):
print("*", end = "")
print()
左对齐 (若"%2d"会默认向右对齐)