day07for循环

for语句
1.作用用来遍历可迭代对象的数据元素
可迭代对象是指能依次获取数据元素的对象
可迭代对象包括:
字符串str
---以后再讲---
列表 list
元组 tuple
字典 dict
集合 set
range函数返回的对象等
2.语法:
for 变量列表 in 可迭代对象:
语句块1
else:
语句块2
+===============================================================+
|练习:
| 1.任意输入一个字符串:
| 1.计算出您输入的空格的个数,并打印出来
| 2.计算您输入的‘a’字符的个数,并打印出来
| 3.思考:while语句能否实现
+===============================================================+
range函数:
1.格式:见:>>>>> help(range)
2.函数:
range(stop)
1.从零开始,每次生成一个整数后加1操作,直到stop为止不包含()
range(start,stop[,step])
2.从start开始,每次生成一个整数后移动step,直到stop为止,(不包含stop,且stop可以是负整数)
3.作用:
用来创建一个生成一系列证书上的可迭代对象(也叫整数序列生成器)
示例:
range(4)        >>>> # 0,1,2,3  
range(3,6)      >>>> # 3,4,5
range(1,10,2)   >>>> # 1,3,5,7,9
range (5,0,-2)    >>>> # 5,3,0
range (4,0)       >>>> # ()
+-----------------------------------------------+
|课堂练习:
| 1.用for打印1-20的整数
| 2.用for打印1-20的整数,每五个一行
+-----------------------------------------------+
|'''#1.用for语句打印
|for num in range(1,21):
|    print(num,end = " ")
|else:
|     print()
|'''
|#第二题:
|for num in range(1,21):
|    print(num, end = " ")
|    if num % 5 == 0:
|        print()
|else:
|     print()
+-----------------------------------------------+
+---------------------------------------------------------------+
|练习:
| 1.求100以内在那些数与自身+1的乘积对11求余的结果等于8
| 2.计算1+3+5......+97+99的和
| 分别用for和while语句实现:
+----------------------------------------------------------------+
for语句的注意事项:
1.请问下面的程序
i = 6
for x in range(1,i):
            print(x,i)
   i -= 1
2.如下语句的执行结果是什么?为什么?
for x in range(4,0):
print(x)
print("x绑定",x)#此处打印什么
for语句的嵌套:
示例:
for x in "ABC"
for y in '123':
print(x+y)
+-----------------------------------------------+
|练习:
| 1.输入一个整数n,打印一个对应的正方形:
| 如:输入5:
| 1 2 3 4 5
| 1 2 3 4 5
| 1 2 3 4 5
| 1 2 3 4 5
| 1 2 3 4 5
| 2..输入一个整数n,打印一个对应的正方形:
| 如:输入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
+---------------------------------------------+
问题:
如何让程序不在向下执行,重新开始新的循环
continue:语句:
作用:用于循环语句中(while /for),不在执行本次循环continue之后的语句,重新开始一次新的循环:
说明:1.在for语句中执行continue语句,将会从可迭代对象中取下一个元素,绑定变量后再次执行
     2.在while语句中执行continue,将会直接跳转到while语句的真值表达式处重新判断循环条件;
+-------------------------------------------------------------------------------------------------------+
|练习: |
| 输入一个起始数,用star绑定,输入一个结束数用stop绑定打印start到stop(不包含stop)内额所有奇数 |
+-------------------------------------------------------------------------------------------------------+
-------------------------------------------------------+
|'''
|#continue
|for x in range(5):
|    if x == 2:
|        continue
|    print(x)
|'''
|"""
|#===打印偶数
|for x in range(20):
|    if x % 2 == 1:
|        continue
|    print(x)
|"""
|start = int(input("请输入一个奇数"))
|stop = int(input("请输入一个结束数"))
|for i in range(start,stop): 
|    if i % 2 == 0:
|        continue
|    print(i,end = " ")
|#else:
|#     print()
+------------------------------------------------------+
+-------------------------------------------------------------------+
|练习:求1-100之间所有不能被5,7,11整除的数,以及这些数的和,|
+-------------------------------------------------------------------+
循环语句总结:
while语句:可以用于死循环:
for语句:用于可迭代对象的循环:(字符准,range()返回的对象)
break 语句:用于终止当前循环:
continue语句:用于开始一次新的循环
列表 list:
1.定义:
1.列表是一种容器;
2.列表是序列的一种;
3.列表是可以改变的序列;
4.列表中是由一系列特定元素组成的,元素与元素之间可以设有任何的关联关系,但他们之间有先后顺序关系:
2.穿件空列表的字符串:
l=[]   #l变量绑定空列表
3.创建非空列表的字面值:
l=[1,2,3,4]
l=["beijign","shanghai","shenzhen"]
l=[1,"two",3.14,"四"]
l=[1,2,[3.1,3.2,3.3],4]
列表的构造函数:
list() 生成一个空的列表,等同于 []
list(iterable()) 用可迭代对象创建一个列表
示例:
l=list()    #l绑定空列表
l=list("hello")#l绑定['h','e','l','l','o']
l=list(range(1,10,2))  #绑定[1,3,5,7,9]
列表的运算:
算术运算:
+ += * *=
"+" 用于拼接列表
x = [1 ,2 , 3]
y = [4 ,5 , 6 ]
z = x + y >>> z = [1,2,3,4,5,6]
"+=" 用原列表与左侧列表拼接,用于变量绑定拼接后的列表
x = [1,2,3]
y += [4,5,6]
print(x)
生成重复的列表l
x = [1,2] * 3 >>> x = [1,2,1,2,1,2]
x *= y   等同于 x = x * y
"+="运算符:绑定列表变量 += 可迭代对象:
例如:
l = [1,2,3]
l += [4,5,6]
l += '789'
l += range(10,13)
运行结果为:l = [1,2,3,4,5,6,"7","8","97",10,11,12,13]
列表的比较运算:
运算符:
< <= > >= == !=
比较的规则同字符串的规则相同
x = [1,2,3]
y = [1,2,4]
x != y   >>>>> True
x <= y   >>>>> True
y > x    >>>>> True
["ABC","abc","123"] < ["AB","123","abc"]
["1","Two"] < ["two","1"]    >>>>     TypeError
列表的in/not in 运算符:
1.作用:判断一个值是否存在于列表中,如果存在返回True,否则返回False
not in 的返回值与in 运算符相反;
示例:2 in [1,2,3,4,]   #True
     "2"  in [1,2,3,4]  #False
列表是可迭代对象:
for x  in [2,3,5,7]
print(x)       # x绑定列表内的元素
+---------------------------------------------------------------------------------------+
|练习:
| 1输入三行文字,将这三行文字保存于列表l中,并打印L:如:请输入:"abc"
| 请输入:“1234”
| 请输入:"您好"
| 生成如下列表['abc', '1234','您好']
| 2.输入任意一行文字,存在列表L中,当不输入任意内容回车后退出输入
| 1.打印l列表中的内容
| 2.计算您一共输入的几行内容
| 3.计算您共输入了多少字符
+---------------------------------------------------------------------------------------+
+---------------------------------------------------------------------------------------------------------------+
|练习
| 1.写一个程序,任意输入一个数,判断这个数是否是素数(prime)素数(也叫质数)是只能被1和自身整数的数如:
| 2 3 5 7 11 13 17 19
| 提示:要用循环,先排列出能被2 3 4 5 .....自身整数的非素数,剩余的几位素数
| 2.编写程序求下列多项式的值
| sn = 1/1 - 1/3 + 1/5- 1/7 +   个分式的值是多少将此值乘以4后打印出来
| 3.输入一个整数(代表树干的高度)
| 打印如下形式的圣诞树输入:5
| *         *
|              ***      ***
|               *       *****
|               *          *
|                           *
+---------------------------------------------------------------------------------------------------------------+
|'''
|prime = int(input("请输入一个整数"))
|if prime > 1:
|    for num in range(2,prime):
|        if prime % num == 0:
|            print(prime,"不是素数")
|            break
|        else:
|             print(prime,"您输入的是质数")
|'''
|"""
|#第二题:
|num = int(input("请输入一个整数"))
|sn = 0
|i = 1
|for x in range(1,num,2):
|    sn += 1/(x) * (-1) ** (i + 1)
|    i += 1
|print("结果为",sn*4)
|"""
|#=======第三题:
|height = int(input("请输入一个整数"))
|x = 1
|for i in range(1,height + 1):
|    print(" " * (height - x) + "*" * (2 * x - 1))
|    x += 1
|print("*".center(2 * height - 1))
|print("*".center(2 * height - 1))
+===============================================================+



















































































猜你喜欢

转载自blog.csdn.net/robin13438235412/article/details/80754015