1.for循环语法
for 变量名 in 某数据类型(包括:字符串、列表、元组、字典、集合等)
代码块
for循环的循环次数由数据的元素个数决定
遍历变量的元素
p='python'#字符串
b=[1,2,3] #列表
d= {"age":18,"name":"小白"} #字典
for item in p: #遍历p中的元素 赋值给item
print(item) -->p y t h o n
遍历变量的次数
p='python'字符串
b=[1,2,3] 列表
d= {"age":18,"name":"小白"} #字典类型的数据 遍历访问的是key
字符串结果:
for item in p: #遍历p中的元素6次 赋值给item
print("金") -->金 金 金 金 金 金
字典结果
for a in d
print(a) -->age name
for a in d
print(d[a]) -->18 小白 #打印字典中的值
for a in d.values()
print(a) -->18 小白 #打印字典中的value值
练习:
1、一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,
然后显示一条消息指出这个人是否可以加入球队,询问4次后,输出满足条件的总人数。
L=[5,6,9,3,7,8]
请利用for循环根据L的索引值打印出每个元素的值
请利用for循环和range函数完成1-100整数相加和(包含1,和100)
一个班级有一个花名册,存在列表里面,
从控制台输入一个名字,如果这个名字在花名册里面,就打印这个用户名正确如果不存在那就报错
2.嵌套循环
L=[["小白","小黑","小黄","等等"],["白白","黑黑","黄黄']]
for i in L: 没循环一次,拿到一个子列表
for a in i:
print(a)
请利用嵌套for循环生成一个直角三角形图形
另一种写法
3.while循环 控制循环 判断执行--判断执行 不要死循环
语法:
while 条件表达式: #逻辑 成员 比较 空数据(参照if语句,空数据为false) 布尔值
代码块
执行规律:首先判断while后面的条件表达式是否成了,如果True,那就执行代码块,执行完毕后
否则不进入代码块
防止代码进入死循环:加一个变量来控制
练习题:
利用while循环,实现1-100的整数相加
while 与 if语句搭配使用break continue
练习题:
1、一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,
然后显示一条消息指出这个人是否可以加入球队,询问4次后,输出满足条件的总人数。
2.passwd={" admin":"123321","user1":"123456"}
1、设计一个登陆程序,不同的用户名和对应密码存在一个字典里面,输入正确的用户和密码去登陆2、首先输入用户名,如果用户名不存在或者为空,则一直提示输入正确的用户名3、当用户名正确的时候,提示去输入密码,如果密码跟用户名不对应,则提示密码错误请重新输入4、如果密码输入错误超过三次,中断程序运行。5、当输入密码错误时,提示还有几次机会6、用户名和密码都输入成功的时候,提示登陆成功!
边角料小芝士:
1.range函数 range(m,n,k) m 头:默认为0 n 尾 k 步长,默认为1;取头不取尾
生成整数序列
range(1,5,1) -->1 2 3 4
range(1,6,2) -->1 3 5
range(1,3) -->1 2
range(6) -->0 1 2 3 4 5 #头默认为0
常规:i j k m n 用来表示变量 表示数字c i=1 j=2
2、输入num为四位数,对其按照如下的规则进行加密:
每一位分别加5,然后分别将其替换为该数除以10取余后的结果
将该数的第1位和第4为互换,第二位和第三位互换,最后合起来作为加密后的整数输出
分别求出1-100之间所有奇数和和偶数和:两种方法
等边三角形,每个边都是5个*
输出99乘法表
冒泡排序:小的在前面,大的在后面 按照从小到大进行排序;相邻的元素依次比较,一般最多比较n-1次,就完成n个元素的比较
经典冒泡排序算法:利用for循环,完成a=[1,5,3,45,32,546]