Exercise_9
Exercise 9 : Branch and Leap 2
Test :
打印次数
1
2
3for i in range(0, 10, 2):
print('A')
0,2,4,6,8循环输出5次A
打印次数
1
2for i in 5:
print('A')报错,因为成员资格运算符 in后加序列,而序列只有list, tuple, string三种
break 停止当前循环并结束循环体
continue 终止本轮循环并开始下一轮(在下一轮循环开始之前,需先测试循环条件)
range(10)
list(range(10)) 输出结果为[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2
3
1
2
3
4
5
6
7while True:
while True:
break
print(1)
print(2)
break
print(3)break只能跳出一层循环
改进代码效率:
1
2
3
4
5i = 0
string = 'ILoveFishC.com'
while i < len(string) :
print(i)
i += 1由于每次判断都需要调用len(string)故效率低,因此我们选择采用length = len(string)来提高效率。
Try :
设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内容包含‘*’则不计算在内。
1
2
3
4
5
6
7
8
9
10
11
12
13count = 3
password = 'abc123'
while count:
password2 = input('Pls input a password:')
if password2 == password:
print('You have entered the right password!')
break
elif '*' in password2:
print("There is none '*' in password, you have another", count,' opportunity(ies)! ')
continue
else:
print('It is wrong! You have another', count-1, 'opportunity(ies)! ')
count -= 1存在问题 : input的对象内部含’*‘会导致空str导入(待解决)
水仙花数问题(ABC = A^3 + B^3 + C^3 )
narcissistic number :
1
2
3
4
5
6
7for i in range(100,1000):
a = i//100 #注意用地板除//而非/
b = i//10 - a * 10
c = i%10
if a ** 3 + b ** 3 + c ** 3 == i:
print(i)
i += 11
2
3
4
5
6
7
8for i in range(100,1000):
summary = 0
temp = i
while temp:
summary = summary + (temp%10) ** 3
temp //=10
if summary == i:
print(i)两种不同的方法完成
红球3,黄球3,绿球6个。将12个球混合放入一个盒子中,从中任意摸出8个球,编程计算摸出球颜色搭配。
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!