while 条件判断: 语句块else : 语句块在上述语句中,即使while一次不执行,程序直接执行else语句,这种执行方式类似于do while语句,while循环结束时的else语句,可以视为循环正常结束时的清理动作。
7.for语句也可以else语句块中止,可可以和break和continue一块使用
for target in object: # statementSuite1 if boolenExpression1: break if boolenExpression2: continue else: statementSuite2for循环正常退出后,执行else块break语句提供了for循环的异常退出,跳过else子句continue语句终止目前的循环异常,继续循环余下的部分
2.课后习题:
2.1有多少个三位数字能被17整除?编写程序,将这些数字显示出来
#all triple digits that can be divided exactly by 17
count = 0
for num in range(100,1000):
if(num % 17 == 0):
print num,
count = count +1
print
print "Total number is:",count
sum = 0
count = 1
num = raw_input("input an Integer:")
num = int(num)
while count <=num:
print count,
sum = sum + count
if(count != num):
print "+",
count = count + 1
print "=",sum
(b)改写程序,使用循环嵌套的方式计算连续整数和。例如,如果输入5,输出来内需5个数字的和:
1=11+2=31+2+3=61+2+3+4=101+2+3+4+5=15
sum = 0
count = 1
num = raw_input("Enter an integer:")
num = int(num)
while(count <= num):
sum = sum + count
count = count + 1
print sum,",",
(c)再次修改程序,如果得到的和能被操作数的数目(X)整除,显示和的值。
sum = 0
count = 1
num = raw_input("Enter an integer:")
num = int(num)
while(count <= num):
sum = sum + count
count = count + 1
if(sum % num == 0):
print sum
num = raw_input("Input an Integer:")
while(num.isdigit() != True):
print "Error: try again. ",
num = raw_input("Input an Integer:")
else:
print "The Ingeger is",num
height = 1.0/20000;
times = raw_input("Input the times to fold:")
times = int(times)
height = height * 2**times
print "After fold,the height is :",height