实践练习——Python集合与字典

练习1

问题描述:

有一个列表,其中包括 10 个元素,例如这个列表是[1,2,3,4,5,6,7,8,9,0],要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最后,然后输出这个列表。最终样式是[2,3,4,5,6,7,8,9,0,1]

 

编写代码如下,可供参考:

li1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(li1)

li2 = li1.pop(0)
li1.append(li2)
print(li1)

输出结果为:


练习2

问题描述:按照下面的要求实现对列表的操作:

  1. 产生一个列表,其中有 40 个元素,每个元素是 50 到 100 的一个随机整数     
  2. 如果这个列表中的数据代表着某个班级 40 人的分数,请计算成绩低于平均分的学生人数     
  3. 对上面的列表元素从大到小排序并输出li.sort(reverse=True)

编写的代码如下,可供参考:

import  random
score = []
# 循环40次
for count in range(40):
    num = random.randint(50, 100)
    score.append(num)
print("40人分数为:", score)
sum_score = sum(score)
ave_num = sum_score/40
less_ave = len([i for i in score if i<ave_num])  #将小于平均数的找出来,组成新的列表,并度量该列表的长度
print ("平均分数为:%.1f"  % (ave_num))
print ("有 %d 个学生低于平均分数." % (less_ave))
# 由大到小进行排序;
score.sort(reverse=True)
print("排序结果:", score)

输出结果为:


练习3

问题描述:

如果将一句话作为一个字符串,那么这个字符串中必然会有空格(这里仅讨论英文),比如"How are you.",但有的时候,会在两个单词之间多打一个空格。现在的任务是,如果一个字符串中有连续的两个空格,请把它删除。

 

编写的代码如下:

string = "How are  you."
print (string)
str_lst = string.split(" ")
print (str_lst)
words = [s for s in str_lst if s!=""]
print (words)
new_string = " ".join(words)
print (new_string)

输出结果为:

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值