首页 > 编程语言 >python循环

python循环

时间:2022-12-13 18:59:07浏览次数:52  
标签:10 python 质数 else range 循环 print

python学习

1.for 循环

range()函数
for i in range(1,10):
    print(i)
#输出为
1
2
3
4
5
6
7
8
9

该函数还可以制定步长如:for i in range(1,10,2)

即为以2为步长,在1到10内循环。

for循环与列表的结和
squares = []
for number in range(1,10):
       square = number ** 2
       squares.append(square)

print(squares) 
#输出为
[1, 4, 9, 16, 25, 36, 49, 64, 81]

简化

squares = [number**2 for number in range(1,10)]
print(squares)
与字典结合
dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}

for key, value in dic.items():
    print(key, value, sep=':', end=' ')
for key in dic.keys():
    print(key, end=' ')
for value in dic.values():
    print(value, end=' ')

# a:1 b:2 c:3 d:4
# a b c d
# 1 2 3 4
for - else

当for循环正常执行完成时,则继续执行else处的代码块,当for循环出现跳出循环的情况如break语句,则不执行else代码块。

在一些问题中能有很好的效果,如下面的求质数的问题:

for num in range(10, 20):  # 迭代 10 到 20 之间的数字
    for i in range(2, num):  # 根据因子迭代
        if num % i == 0:  # 确定第一个因子
            j = num / i  # 计算第二个因子
            print('%d 等于 %d * %d' % (num, i, j))
            break  # 跳出当前循环
    else:  # 循环的 else 部分
        print(num, '是一个质数')

# 10 等于 2 * 5
# 11 是一个质数
# 12 等于 2 * 6
# 13 是一个质数
# 14 等于 2 * 7
# 15 等于 3 * 5
# 16 等于 2 * 8
# 17 是一个质数
# 18 等于 2 * 9
# 19 是一个质数

当没有因数时则不会执行break语句,则内层循环结束后则会执行else代码块,说明该数为质数。

for循环与enumerate()函数结合

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标。一般用于for循环

用法如下:

l = {'a','b','c','d','e'}
li = list(enumerate(l))
print(li)
li = list(enumerate(l,start=2))
print(li)
#[(0, 'd'), (1, 'b'), (2, 'c'), (3, 'e'), (4, 'a')]
#[(2, 'b'), (3, 'd'), (4, 'e'), (5, 'a'), (6, 'c')]

可填两个实参,前一个为需要操作的列表(元组或字符串),后一个为下标的起始数字,默认为0。

与for循环结合如下:

l=['a','b','c','d','e']
for i,j in enumerate(l,2):
    print(i,j)
#2 a
#3 b
#4 c
#5 d
#6 e

while循环

当while中的条件正确是则继续执行循环,否则退出循环

例子:

string = 'abcd'
while string:
    print(string)
    string = string[1:]

# abcd
# bcd
# cd
# d

当列表为空时其布尔表达式返回0,则不正确,循环终止。

while-else

与for-else类似,当循环正常结束时执行else中的代码块,若出现跳出循环,则不执行。

break语句

直接跳出本层循环。

continue语句

当执行到该语句,跳过下面语句,结束本次循环,直接进行下次循环。

pass语句

不做任何事,可以在没有语句的地方使用,让系统不报错。

标签:10,python,质数,else,range,循环,print
From: https://www.cnblogs.com/102204216zxf/p/16979614.html

相关文章