一,已知列表l=[54,36,75,28,50],请根据要求完成以下操作:
1.在列表尾部插入元素42。
2.在28前面插入元素66。
3.删除并输出元素28。
4.将列表按降序排序。
5.清空整个列表。
l=[54,36,75,28,50]
l.append(42)
print(l)
l.insert(3,66)
print(l)
print(l.pop(4))
print(l)
l.sort(reverse=True)
print(l)
for i in range(len(l)):
l.pop()
print(l)
#结果
[54, 36, 75, 28, 50, 42]
[54, 36, 75, 66, 28, 50, 42]
28
[54, 36, 75, 66, 50, 42]
[75, 66, 54, 50, 42, 36]
[]
二,使用列表生成式,其元素为100以内所有能被3整除的数。
#方法一 使用列表生成式对3到100之间的整数进行遍历步长为3
l=[i for i in range(3,100,3)]
print(l)
#方法二 利用if语句对3到100之间的数进行取余判断是否能被3整除。
l=[i for i in range(3,100) if i % 3==0]
print(l)
#结果
[3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
三,根据表4-3创建列表,并完成如下操作:
1.计算十年平均录取率。
2.找出录取率最高的年份。
rate_years=[(2006,57),(2007,56),(2008,57),(2009,62),(2010,69),(2011,72),(2012,75),(2013,76),(2014,74.3),(2015,74)]
rates=[item[1] for item in rate_years]
print(rate_years)
print(rates)
avg=sum(rates)/len(rates)
print("十年平均录取率为{:.2f}%".format(avg))
topYear=rate_years[rates.index(max(rates))]
print("录取率最高的年份是{}年,录取率为{}%.".format(topYear[0],topYear[1]))
#结果
十年平均录取率为67.23%
录取率最高的年份是2013年,录取率为76%.
四,输入一句英文英语,求其中最长的单词长度。
sen=input(" ")
words=sen.split()
length=[len(word) for word in words]
maxlen=max(length)
print("The longest word is {},There are {} letters in all.".format(words[length.index(maxlen)],maxlen))
#结果
You are the best
The longest word is best,There are 4 letters in all.
五,创建长度为20的列表,其元素为1000~5000以内的随机整数。编写程序找出不能被10以内素数整除的元素。
import random
ls=[random.randint(1,1000) for i in range(20)]
ts=(2,3,5,7)
l1=[0]*len(ls)
for i in range(len(ls)):
for t in ts:
if ls[i] % t==0:
l1[i]=1
l2=[]
for i in range(len(ls)):
if l1[i]==0:
l2.append(ls[i])
print("生成的20个1000~5000的随机数是:")
print(ls)
print("其中不能被10以内素数整除的数是:")
print(l2)
#结果 随机
生成的20个1000~5000的随机数是:
[216, 298, 782, 870, 613, 800, 729, 110, 199, 487, 80, 582, 615, 65, 643, 108, 9, 12, 927, 794]
其中不能被10以内素数整除的数是:
[613, 199, 487, 643]
六,用嵌套的列表存储运动会报名表(见表4-4),并编程完成如下操作:
1.求报名项目超过两项(含两项)的学生人数。
2.输出女生的报名情况。
3.输出所有报名3000m的学生姓名和性别。
tables=[['王平','男',1,1,0,0],
['李丽','女',0,1,0,1],
['陈小梅','女',0,0,1,0],
['孙洪涛','男',0,1,1,1],
['方亮','男',1,0,1,0]]
n=0
for item in tables:
if item.count(1)>=2:
n+=1
print(n)
lv=[]
for item in tables:
if item[1]=='女':
lv.append(item)
print(lv)
#结果
4
[[‘李丽’, ‘女’, 0, 1, 0, 1], [‘陈小梅’, ‘女’, 0, 0, 1, 0]]
王平 男
李丽 女
孙洪涛 男