Python中range函数、循环语句的使用

本文介绍了Python中的range函数,包括其三种用法,并详细讲解了while循环、for-in循环、break和continue语句的使用,以及循环嵌套和else语句在不同情况下的执行逻辑。通过实例展示了这些概念在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.range函数的使用

range函数的作用是生成一个整数序列
range函数的优点在于,不管range对象表示的整数序列有多长,占用的内存空间都是相同的,因为只需要存储start,stop,step三个参数,当要用到range对象时,才会去计算序列中的相关元素。

range函数有下面三种形式。

(1)range(stop)

r = range(10)
print(r)    # 输出的是range(0, 10)
print(list(r)) # 查看range对象中的整数序列

上述代码运行结果说明到10结束(不包括10),默认从0开始,默认步长为1(相邻两个数相差1)

(2)range(start, stop)

r = range(1, 10)
print(r)
print(list(r))

上述代码规定从1开始,到10结束。

(3)range(start, stop, step)

r = range(1, 10, 2)
print(r)
print(list(r))

上述代码规定从1开始,到10结束,步长为2。

注:使用 in 和 not in 可以判断某个元素是否在数列里面。

print(7 in r)
print(5 not in r)

2.while循环

i = 0
sum = 0
while i <= 100:
    sum += i
    i += 2
print(sum)

3.for-in循环

格式为:for 自定义的对象 in 可迭代对象(如字符串,数列等)
作用:依次将可迭代对象的内容赋值给自定义对象

for item in 'python':  # 依次取出字符串的字符并赋值给item
    print(item)
for i in range(3, 10, 2):  # 依次取出序列的数字并赋值给i
    print(i)

如果在循环体中不需要用到自定义变量,可以用 _ 代替,可视为单纯的循环语句

for _ in range(5):  # 循环5次
    print('Python')

实例:输出100~1000以内的水仙花数

for n in range(100, 1000):
    if (n//100)**3 + (n//10 % 10)**3 + (n % 10)**3 == n:
        print(n)

4.break:跳出当前循环

实例:银行输密码

# for-in语句实现
for _ in range(3):
    pwd = int(input('请输入密码'))
    if pwd == 8888:
        print('密码正确')
        break
    else:
        print('密码错误')
# while语句实现
i = 0
while i < 3:
    pwd = input('请输入密码')
    if pwd == '8888':
        print('密码正确')
        break
    else:
        print('密码错误')
        i += 1

5.continue:忽略后面语句,直接执行下一个循环

实例:输出50以内5的倍数

for item in range(51):
    if item % 5 != 0:
        continue
    else:
        print(item)

6.循环嵌套

实例:打印一个3行5列的矩阵

for _ in range(3):
    for _ in range(5):
        print('*', end='\t')
    print('\n')  # 也可以用print()换行

注:print()和print(’\n’)都可以换行

实例:打印九九乘法表

for item1 in range(1, 10):
    for item2 in range(1, item1+1):  # 为什么要+1?是因为这是个开区间
        print(item2, '*', item1, '=', item1*item2, end='\t')
    print()

7.else语句的其他用法:和循环语句并列,可视为同属一段代码段,当循环语句没有碰到break的时候,循环结束后会执行外面的else语句,否则不执行

实例:银行输密码

for _ in range(3):
    pwd = input('请输入密码')
    if pwd == '8888':
        print('密码正确')
        break
    else:
        print('密码错误')
else:
    print('对不起,三次密码错误!')
# else和for并列,当循环语句没有碰到break的时候,循环结束会执行外面的else语句,否则不执行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值