菜鸟Python记录

#2021.4.19 for_in循环

1. 输出100到999之间的水仙花数 类如153=3x3x3+5x5x5+1x1x1

输出100999之间的水仙花数 类如153=3*3*3+5*5*5+1*1*1
a=0
for item in range(100,1000):
    if (item//100)**3+(item%100//10)**3+(item%10)**3 == item:#注意://是取商整数,而/是直接取商,十位数可以是item//10%10
        a+=item
        print(item)
print(a)

结果为:
菜鸟Python记录_第1张图片
为了使得过程更加清楚,我们可以将水仙花数在相加过程中打印出来,如下图中的前四行153,370,371和407。
Notes:
1.十位数也可以是item//10%10,代码中用到的是item%100//10;
2.//是取商整数,而/是直接取商;例如145/10=14.5,而145//10=4;
3.a**3=a的3次方,**表示幂运算;

首先range(100,1000)指的是从1000开始到999到之间所有的整数,相当于【100,1000)左闭右开,由于默认步长为1,所以为整数。对于range函数,range(开始值,结束值,步长)

  • range(1,10,3)为从1开始到9结束,间隔为3的数
# 第二种创建方式
r=range(1,10,3)  # [1, 4, 7]从1开始,到10结束,步长为3
print(list(r))

结果为:
菜鸟Python记录_第2张图片

  1. 若没有开始值时默认为0,比如range(10)= 0,1,2,3,4,5,6,7,8,9
r=range(10)  # 从0开始,一遇到10就结束
print(r)  # range(0, 10)
print(list(r))   # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

结果为:
菜鸟Python记录_第3张图片
2. password密码的设计,只能尝试三次

for i in range(3):
    password=int(input('请输入密码'))
    if password ==2345:
        print('输入正确')
        break
    else:
        print('错了')

菜鸟Python记录_第4张图片

3.for in 简单练习

for item in '':#将字符串依次赋给item,每一次都会输出打印一个字母
    print(item)
for i in range(5):#将数字0-4赋给i,并且每次都要打印
    print(i)
for _ in range(5):#将字符串‘努力积极向上的敏崽崽’打印五遍
    print('努力积极向上的敏崽崽')

结果为:
在这里插入图片描述

菜鸟Python记录_第5张图片

你可能感兴趣的:(python)