range()内置python函数
range(stop):0~stop-1
range(start,stop):start~stop-1
range(start,stop,step):start~stop-1,step为步长
1.求1~100之和
sum = 0
for i in range(1,101):
sum = sum + i
print(sum)
2.求1~100之间的所有偶数之和
sum = 0
for i in range(2,101,2):
sum = sum + i
print(sum)
3.求1~100之间的所有的奇数之和
sum = 0
for i in range(1,101,2):
sum = sum + i
print(sum)
4.阶乘
res = 1
num = int(input('请输入数字:'))
for i in range(1,num+1):
res = res * i
print('%d的阶乘为:%d' %(num,res))
for 循环使用的语法:
for 变量 in range(10):
循环需要执行的代码
else:
全部循环结束后要执行的代码
练习:
用户登陆程序
1.输入用户名和密码
2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)
3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错
for i in range(3):
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'root' and password == 'redhat':
print ('登陆成功')
break
else:
print('登陆失败')
print('还有%d次机会' %(2-i))
else:
print('登陆失败次数限制,请刷脸!')
有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if i != j and i != k and j != k:
print(i,j,k)
最大公约数和最小公倍数
num1 = int(input('请输入数字1:'))
num2 = int(input('请输入数字2:'))
if num1 < num2:
min = num1
else:
min = num2
for i in range(1,min+1):
if num1 % i == 0 and num2 % i == 0:
gys = i
gbs = (num1 * num2)/gys
print('%d和%d的最大公约数是:%d' %(num1,num2,gys))
print('%d和%d的最小公倍数是:%d' %(num1,num2,gbs))
九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print('%d*%d=%d\t' %(j,i,j*i),end=('')) ##end=('')表示不换行
print('') ##表示换行
更多表示方法见while语句及其相关练习