目录
1.range() 内建函数
range(stop) #0~stop-1
range(start,stop) #start~stop-1
range(start,stop,step) #step为步长
案例:
>>> list(range(3))
[0, 1, 2]
>>> list(range(4))
[0, 1, 2, 3]
>>> list(range(1,7))
[1, 2, 3, 4, 5, 6]
>>> list(range(0,5))
[0, 1, 2, 3, 4]
>>> list(range(0,7,3))
[0, 3, 6]
>>> list(range(0,9,2))
[0, 2, 4, 6, 8]
>>> list(range(0,8,2))
[0, 2, 4, 6]
>>> list(range(4,1,-1))
[4, 3, 2]
range(3) = [0,1,2] range(6) = [0,1,2,3,4,5]
range(1,4) = [1,2,3] range(-3,1) = [-3,-2,-1,0]
range(1,6,2) = [1,3,5] range(4,1,-1) = [4,3,2]
2.for循环的格式
for 变量 in range(10):
循环需要执行的代码
else:
全部循环结束后要执行的代码
3.练习1:用for循环求1-100的和
#1.求1-100的和
sum=0
for i in range(1,101):
sum += i
print(sum)
4.练习2:求1-100奇数之和
sum=0
for i in range(1,101,2):
sum += i
print(sum)
5.练习3:求10的阶乘
sum=1
for i in range(1,11):
sum *= i
print(sum)
6.练习4:基于for循环的用户登录程序
要求:
1.输入用户名和密码
2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)
3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错
for try_count in range(3):
print("*************user login system***********")
user = input("please input user name:")
password = input ("please input password:")
if (user == "root" and password == "westos"):
print ("login success")
break
else:
print ("login failed,%d chances remain" %(2-try_count))
else:
print("chances gone,please wait 100s to try again")
7.练习5:求两个数的最大公约数和最小公倍数
要求:
输入两个数值:
求两个数的最大公约数和最小公倍数.
最小公倍数=(num1*num2)/最大公约数
num1 = int(input("please input num1:"))
num2 = int(input("please input num2:"))
minnum = min(num1,num2)
for i in range(1,minnum+1):
if (num1 % i == 0 and num2 % i == 0):
gys = i
gbs=int((num1*num2)/gys)
print ("the gys of %d and %d is %d" %(num1,num2,gys))
print ("the gbs of %d and %d is %d" %(num1,num2,gbs))