1,三元条件运算符,用在某些简单的双分支赋值情况
格式如下:
条件为真时的值 if(条件语句) else 条件为假时的值
>>> a=-3
>>> print("a是大于0的数字" if a>0 else "a是小于0的数字")
a是小于0的数字
>>> a=8
>>> print(a if a<10 else "a的值大于或等于10")
8
2,多分支选择结构
多分支结构,几个分支之间是有逻辑关系的,不能随意颠倒顺序
【操作】输入一个学生的成绩,将其转化为简单的描述:不及格(小于60)及格(60-79)良好(80-89)优秀(90-100)
a = int(input("请输入学生的成绩:"))
if a < 60:
print("不及格")
elif a < 80:
print("及格")
elif a < 90:
print("良好")
else:
print("优秀")
代码块的运行结果如下:
请输入学生的成绩:85
良好
**
3,if条件语句的选择结构嵌套
**
示例代码如下:
score=int(input("请输入一个整数"))
grade=""
if score>100 or score<0:
print("请输入0-100之间的整数")
else:
if score>=90:
grade="优秀"
elif score>=80:
grade="优良"
elif score>=60:
grade="及格"
else:
grade="不及格"
print("分数是{0}等级是{1}".format(score,grade))
另外一种代码的写法如下:
score=int(input("请输入一个整数"))
degree="ABCDEF"
num=0
if score>100 or score<0:
print("请输入0-100之间的整数")
else:
num=score//10
if num<6:
num=5
print("分数是{0},等级是{1}".format(score,degree[9-num]))
**
4,while循环
**
计算1-100之间的数字累加和
i=1
result=0
while i<=100:
result += i
i += 1
print("累加和为{0}".format(result))
**
5,for循环 通常用于可迭代对象的遍历
**
>>> a = {"name": "pipi", "age": 17, "job": "teacher"}
>>> for x in a:
print(a.keys()) #打印键
dict_keys(['name', 'age', 'job'])
dict_keys(['name', 'age', 'job'])
dict_keys(['name', 'age', 'job'])
>>> for x in a:
print(a.values()) #打印值
dict_values(['pipi', 17, 'teacher'])
dict_values(['pipi', 17, 'teacher'])
dict_values(['pipi', 17, 'teacher'])
>>> for x in a:
print(a.items()) #打印键值对
dict_items([('name', 'pipi'), ('age', 17), ('job', 'teacher')])
dict_items([('name', 'pipi'), ('age', 17), ('job', 'teacher')])
dict_items([('name', 'pipi'), ('age', 17), ('job', 'teacher')])
for循环计算1-100之间的数字累加和
result=0
for x in range(101):
result += x
print("1-100之间的累加和为{0}".format(result))
运行结果为
1-100之间的累加和为5050
for循环计算1-100之间的 奇数 累加和
result=0
for x in range(101):
if x%2 !=0:
result += x
print("1-100之间的奇数累加和为{0}".format(result))
运行结果为
1-100之间的奇数累加和为2500
for循环计算1-100之间的 偶数 累加和
result=0
for x in range(101):
if x%2 ==0:
result += x
print("1-100之间的偶数累加和为{0}".format(result))
运行结果为
1-100之间的偶数累加和为2550
**
6,for嵌套循环打印九九乘法表
**
for x in range(1,10):
for y in range(1,x+1):
print("{0}*{1}={2}".format(y,x,y*x), end="\t")
print("")
运行结果如下所示:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
操作示例
用列表和字典存储下表信息,并打印出表中工资高于15000的数据
a=[{"name":"小三", "age":18, "salary":30000, "city":"北京"},
{"name":"小四", "age":19, "salary":20000, "city":"上海"},
{"name":"小五", "age":20, "salary":10000, "city":"北京"}]
for i in a:
if i.get("salary")>15000:
print(i)
运行结果如下:
{'name': '小三', 'age': 18, 'salary': 30000, 'city': '北京'}
{'name': '小四', 'age': 19, 'salary': 20000, 'city': '上海'}