python 中的for语句

ipython中range的用法

In [1]: range(5)
Out[1]: [0, 1, 2, 3, 4]

In [2]: range(7)
Out[2]: [0, 1, 2, 3, 4, 5, 6]

In [3]: range(1,10)
Out[3]: [1, 2, 3, 4, 5, 6, 7, 8, 9]

拿出1~10之间的所有奇数
In [5]: range(1,11,2)
Out[5]: [1, 3, 5, 7, 9]

拿出1~10之间的所有偶数
In [6]: range(2,11,2)
Out[6]: [2, 4, 6, 8, 10]

In [7]: range(2,11,3)
Out[7]: [2, 5, 8]

In [8]: range(2,11)
Out[8]: [2, 3, 4, 5, 6, 7, 8, 9, 10]

range(stop): 0~stop 1
range(start,stop):start-stop 1
range(start,stop,step): start~stop step(步长)

一.for语句的例子

1.求1~100之间的所有偶数之和


sum = 0
for i in range(2,101,2):
    sum += i
print sum


 2.求1~100之间的所有奇数之和


sum1 = 0
for i in range(1,101,2):
    sum1 += i
print sum1

 3.用户输入一个整型数,求该数的阶乘

# 3 = 3*2*1
num = int(raw_input('Num:'))
res = 1
for i in range(1,num+1): # num:3 rang(1,4)== 1,2,3
    res = res * i
print '%d 的结果是:%d' %(num,res)

二.练习

1.

题目:用户登陆程序需求:
    1. 输入用户名和密码;
    2. 判断用户名和密码是否正确? (name='root', passwd='westos')
    3. 为了防止暴力破解, 登陆仅有三次机会, 如果超过三次机会, 报错提示;

代码:

for i in range(3):
    name = raw_input('用户名:')
    passwd = raw_input('密码:')
    if name == 'root' and passwd == 'westos':
        print '登陆成功'
        break
    else:
        print '登陆失败'
        print '您还剩余%d次机会' %(2-i)

# 循环执行结束后执行的代码
else:
    print '登陆次数超过三次,请等待100s后再次登陆'

题目2:

输入两个数值:
    求两个数的最大公约数和最小公倍数.
    最小公倍数=(num1*num2)/最大公约数

代码:

num1 = int(raw_input('Num1:'))
num2 = int(raw_input('Num2:'))
min_num = min(num1, num2)
for i in range(1, min_num + 1):
    if num1 % i == 0 and num2 % i == 0:
        # 当循环结束,保存最大公约数
        gys = i
lcm = (num1 * num2)/gys
print '%s和%s的最大公约数为%s' %(num1,num2,gys)
print '%s和%s的最小公倍数为%s' %(num1,num2,lcm)

猜你喜欢

转载自blog.csdn.net/qq_38449802/article/details/82352169
今日推荐