1.聲明一個字典保存一個學(xué)生的信息乍桂,學(xué)生信息中包括: 姓名适肠、年齡、成績(單科)制圈、電話
student={'name': '賀仕豪','age':26,'grade':100, 'phone':13162276687}
print (student)
2.聲明一個列表们童,在列表中保存6個學(xué)生的信息(6個題1中的字典)
a.統(tǒng)計不及格學(xué)生的個數(shù)
b.打印不及格學(xué)生的名字和對應(yīng)的成績
c.統(tǒng)計未成年學(xué)生的個數(shù)
d.打印手機尾號是8的學(xué)生的名字
e.打印最高分和對應(yīng)的學(xué)生的名字
f.將列表按學(xué)生成績從大到小排序(掙扎一下,不行就放棄)
student =[{'name':'Amanda','age':23,'grade':98,'phone':'123456789'},\
{'name':'salary','age':23,'grade':98,'phone':'123456789'},\
{'name':'yeping','age':25,'grade':98,'phone':'123456789'},\
{'name':'zhangwuji','age':20,'grade':58,'phone':'12345789'},\
{'name':'yangjianxuan','age':20,'grade':59,'phone':'12345788'},\
{'name':'yangdingtian','age':60,'grade':42,'phone':'12345788'}]
a.統(tǒng)計不及格學(xué)生的個數(shù)
count=0
for stu_dic in student:
if stu_dic['grade']<60:
count+=1
print('不及格人數(shù)是%d人'% count)
b.打印不及格學(xué)生的名字和對應(yīng)的成績
for stu_dic in student:
if stu_dic['grade']<60:
print('不及格的學(xué)生是%s,成績是%d'%(stu_dic['name'],stu_dic['grade']))
c.統(tǒng)計未成年學(xué)生的個數(shù)
count=0
for stu_dic in student:
if stu_dic['age']<18:
count+=1
print('未成年學(xué)生的個數(shù) %d人' %count)
d.打印手機尾號是8的學(xué)生的名字
for stu_dic in student:
if stu_dic['phone'][len(stu_dic['phone'])-1] == '8':
print("手機尾號是8的學(xué)生是%s"%(stu_dic['name']))
e.打印最高分和對應(yīng)的學(xué)生的名字
maxx=student[0]['grade']
for stu_dic in student:
if stu_dic['grade']>maxx:
maxx=stu_dic['grade']
for stu_dic in student:
if stu_dic['grade']==maxx:
print('最高分是%d,學(xué)生是%s'%(stu_dic['grade'],stu_dic['name']))
f.將列表按學(xué)生成績從大到小排序(掙扎一下鲸鹦,不行就放棄)
for i in range(len(student)-1):
for j in range(i+1, len(student)):
if student[j]['grade'] > student[i]['grade']:
student[j]['grade'], student[i]['grade'] = student[i]['grade'], student[j]['grade']
print(student)
3.用三個列表表示三門學(xué)科的選課學(xué)生姓名(一個學(xué)生可以同時選多門課)
class1_list = ['a', 'b', 'c', 'd', 'q']
class2_list = ['b', 'c', 'e', 'h', 'w']
class3_list = ['a', 'c', 'h', 'f', 'y']
class1_set = set(class1_list)
class2_set = set(class2_list)
class3_set = set(class3_list)
a. 求選課學(xué)生總共有多少人
all_set = class1_set | class2_set | class3_set
print("選課人數(shù):%d" % (len(all_set)))
b. 求只選了第一個學(xué)科的人的數(shù)量和對應(yīng)的名字
only_cl1 = class1_set - class2_set - class3_set
print("只選了第一門課的人數(shù)是:%d,是%s" % (len(only_cl1), ','.join(only_cl1)))
c. 求只選了一門學(xué)科的學(xué)生的數(shù)量和對應(yīng)的名字
only_3 = class1_set & class2_set & class3_set
only_1 = class1_set ^ class2_set ^ class3_set - only_3
print("只選了一門課的人數(shù)是%d慧库,是%s" % (len(only_1), ','.join(only_1)))
d. 求只選了兩門學(xué)科的學(xué)生的數(shù)量和對應(yīng)的名字
only_2 = all_set - only_1 - only_3
print("只選了兩門學(xué)科的人數(shù)是%d,是%s" % (len(only_2), ','.join(only_2)))
e. 求選了三門學(xué)生的學(xué)生的數(shù)量和對應(yīng)的名字
print("選了三門學(xué)科的人數(shù)是%d,是%s" % (len(only_3),','.join(only_3)))