Python3基础(break,for,range,continue)

break 语句
作用:
用于循环语句(while,for语句)中,用来终止当前循环语句的执行
说明:
当break语句执行后,此循环语句break之后的语句将不在执行
break语句通常和if语句组合使用
break语句终止循环时,循环语句的else子句的语句不会执行
break语句只能终止当前语句的执行,如果有循环嵌套时,
不会跳出嵌套的外重循环l_p[‘name’] = n
break语句只能在循环语句(while,for语句)的内部使用
示例见:day005/a04.py

#此示例示意用break语句来终止循环

i = 1
while i < 6:
    print("循环开始的i=", i)
    if i == 3:
        break

    print("循环结束的i=", i)
    i += 1
else:
    print("while里的else子句被执行")

print("循环结束")

-----------------------------------------------

死循环
死循环是指循环条件一直成立的循环
死循环通常能用break语句来终止循环
死循环的else子句永远不会执行

示例见:day005/a05.py

s = 0			#用于累加
while True:
    n = int(input("请输入一个整数:"))
    if n < 0:		#当输入的整数小于0时
        break		#终止循环
    s = s + n		#每循环一次累加一次n
print(s)        #打印出你输入的全部整数的和
print()

-----------------------------------------------

for语句
作用:
用来遍历可迭代对象的数据元素
(可迭代对象是指能依次获取数据元素的对象,如:字符串,列表,元祖,range函数返回的对象等)

语法:
for 变量列表 in 可迭代对象:
  语句块1(此处是可能重复执行的语句块)
else:
  语句块2

说明:
当在循环体内用break终止循环时,else子句部分的语句不会执行,else子句部分可以省略

示例见:day005/a06.py

s = "ABCDE"
for ch in s:
    print("ch---->", ch)
    if ch == 'C':
        break
    print("这是break之后的语句")
else:
    print('for语句的else子句被执行')
print('程序结束')

for语句嵌套:
示例:
for x in “ABC”:
  for y in “123”:
   print(x + y)
例题
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去
 掉不满足条件的排列。

for x in range(1, 5):
    for y in range(1, 5):
        for z in range(1, 5):
            if x != y and x!= z and y != z:
                print (x, y, z)

------------------------------------------------

range() 函数
range(stop) 用来生成0~stop区间内的整数,直到stop为止(不包含stop)
range(start, stop[,step]) 用来生成start~stop区间内的整数,直到stop为止(不包含stop),
每个整数间隔step

格式详见
>>>help(range)

作用:
用来创建一个生成一系列整数的可迭代对象(也叫整数序列生成器)

示例:
range(4) 生成0, 1, 2, 3
range(3, 6) 生成3, 4, 5
range(1, 10, 2) 生成1, 3, 5, 7, 9
range(4, 0) 生成 空
range(5, 0, -2) 生成5, 3, 1

实例见:day005/a08.py

for x in range(4):
    print(x)

print('-----------------------')		
for x in range(3, 6):
    print(x)

print('=======================')
for x in range(10, 0, -2):
    print(x)

-------------------------------------------------

continue 语句
作用:
用于循环语句(while, for)中,不再执行本次循环内continue之后的语句,重新开始一次新的循环
说明:
1.在while语句中执行continue语句,将会直接跳转到while语句的真值表达式处,重新判断循环条件
2.在for语句中执行continue语句,将会从可迭代对象中取下一个数据,绑定变量后再次进行循环
示例见:day005/b03.py

for n in range(0, 10):
    if n % 2 == 0:
        continue
    print(n)

print('---------------------------')
n = 0
while n < 10:
    if n % 2 == 0:        
        n += 1
        continue
    print(n)
    n += 1
  

-------------------------------------------------

--------------------------------------------------
练习:
1.输入一个整数,此整数代表三角形的直角边长,根据整数n打印如下四种三角形
请输入:3
打印如下:
1)
*
**
***
2)
*
**
***

3)
	***
	**
	*
4)
	***
	 **
	  *	
n = int(input('请输入:'))
for line in range(1, n + 1):
    print('*' * line)
print()

for line in range(1, n + 1):
    blank = n - line
    print(' ' * blank + '*' * line)
print()

for stars in range(n, 0, -1):
    print('*' * stars)
print()

for stars in range(n, 0, -1):
    blank = n - stars
    print(' ' * blank + '*' * stars)

2.写一个程序,任意输入一个整数,判断这个整数是否是素数(pr),素数(也叫质数),只能被1和自身整除的正整数 如:2 3 5 7 11 13 17 19
提示:
用排除法,当判断x是否为素数时,只要让x分别除以2,3,4,…x-1,只要一个能整除,则x不是素数,否则x是素数

x = int(input('请输入一个整数:'))
if x < 2:
    print(x, '不是素数')
else:
    prime_flag = True   #先假设x是素数
    for i in range(2, x):
        if x % i == 0:      #说明整数
            prime_flag = False
            break
#当循环结束后,prime_flag为真则为素数
    if prime_flag:
        print(x, '是素数')
    else:
        print(x, '不是素数')

方法二:

n = int(input('请输入整数:'))
i = 2
while i <= (n - 1):
    if n % i == 0:
        print('这个数不是素数')
        break
    i += 1
else:
    print('这个数是素数')  

3.输入一个正整数代表正方形的宽和高,打印如下正方形
如:
请输入:5
打印:
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9

n = int(input('请输入:'))
for line in range(1, n + 1):        #line代表行数
    for i in range(line, line + n):
        print(i, end=' ')
    print()

你可能感兴趣的:(python笔记)