range():内置的python函数
range(stop):0~stop-1
range(start,stop):start~stop-1
range(start,stop,step):step:为步长
python2中会显示出内容:
python3中不会现实内容:
for
例子:
1求1~100的和
sum = 0
for i in range(1,101):
sum +=i #sum = sum + i
print(sum)
2.求1~100的奇数之后
sum = 0
for i in range(1,101,2):
sum += i
print(sum)
3.求1~100的偶数之后
sum = 0
for i in range(2,101,2):
sum += i
print(sum)
4.用户输入一个数字,求该数的阶乘:3!=321
for 循环
for 变量 in range(10):
循环需要执行的动作
else:
全部循环结束后要执行的动作
例子:用户登陆程序
1.输入用户名和密码
2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)
3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错
for i in range(3): #0 1 2
name = input(‘用户名:’)
passwd = input(‘密码:’)
if name == ‘root’ and passwd == ‘westos’:
print(‘登陆成功’)
# 跳出整个循环,不会再执行后面的内容
break
else:
print(‘登陆失败’)
print(‘您还剩余%d次机会’ %(2-i))
else:
print(‘登陆次数超过三次,请等待100s后再次尝试登陆’)
跳出循环
break:跳出整个for循环 不会再执行循环后面的内容
continue:跳出本次for循环,continue后面的代码不会执行
exit():结束整个程序的运行
命令行提示符的实现
import os
#print(os.system(‘ls’))
#print(os.system(‘pwd’))
import os
for i in range(1000):
cmd = input(’[test@foundation0 bin]$’)
if cmd:
if cmd == ‘exit’:
print(‘logout’)
break
else:
print(‘run %s’ %(cmd))
# 运行shell命令
os.system(cmd)
else:
continue
练习
输入两个数值,然后输出两个数的最大公约数和最小公倍数.
最小公倍数=(num1*num2)/最大公约数
x,y = map(int,input(’’).split())
if x>y:
a=y
else:
a=x
for i in range(1,a+1):
if x%i ==0 and y%i ==0:
b=i
print(‘最大公约数是%d’ %(b))
c=(x*y)/b
print(‘最小公倍数是%d’ %©)