一、实验目的
1、 巩固列表的创建、增删改查和元组的创建、查询访问。
2、 掌握字典的创建方法。
3、 掌握字典的访问与修改。
4、 掌握字典的添加、删除方法。
5、 掌握集合的创建方法。
6、 掌握集合元素添加和删除方法,掌握集合运算方法。
二、实验要求
- 每道题都需要提交源代码,提交结果截图,截图务必清晰。
- 运行如果有错,请分析出错原因。
三、实验内容
1、编写程序,从键盘输入一个具有重复元素的字符串列表,删除该列表中的所有重复字符串元素。
2、输入一行字符,统计出其中每个字符的出现个数。
3、请输入10个学生的百分制成绩,将成绩存放在列表中,并统计优(90~100)、良(80~89)、中(60~79)、差(0~59)四个等级的人数,输出由等级和人数构成的字典。
4、编写程序,输出由3,4,5,7这4个数字组成的四位数的素数,并且在每个素数中每个数字只使用一次。
list_1 = list(map(int, input("输入用空格分隔的数字:").split()))
list_2 = []
# 从键盘输入一个列表
print("去重前:", list_1)
for i in range(0, len(list_1)):
# 确定循环次数
if list_1[i] not in list_2:
# 进行判断 i 是否在 2 中 去重操作
list_2.append(list_1[i])
print("去重后:", list_2)
list_1 = input("请输入字符 : ")
print(list_1)
letters = 0
space = 0
digit = 0
others = 0
for c in list_1:
if ():
letters += 1
elif ():
space += 1
elif ():
digit += 1
else:
others += 1
print('char=%d,space=%d,digit=%d,others=%d' % (letters, space, digit, others))
list_1 = list(map(int, input("请输入学生成绩用空格分隔:").split()))
# 从键盘输入一个列表
a = 0 # 优的人数
b = 0 # 良的人数
c = 0 # 中的人数
d = 0 # 差的人数
print("成绩统计总表:", list_1)
for i in range(0, len(list_1)):
# 确定循环次数
if list_1[i] >= 90:
a += 1
if 80 <= list_1[i] <= 89:
b += 1
if 60 <= list_1[i] <= 79:
c += 1
if 0 <= list_1[i] <= 59:
d += 1
e = {'优': a, "良": b, "中": c, "差": d}
print("统计结果 :")
print("优 :", e["优"])
print("良 :", e["良"])
print("中 :", e["中"])
print("差 :", e["差"])
def re_list():
list_1 = [3, 4, 5, 7]
list_2 = []
for a in list_1:
for b in list_1:
if a == b:
continue
for c in list_1:
if (a == c) or (b == c):
continue
for d in list_1:
if (a == d) or (b == d) or (c == d):
continue
# 反复比较 将 a b c d 赋上不同的值 a作为千位 b作为百位 c作为十位 d作为个位
result = 1000 * a + 100 * b + 10 * c + d
list_2.append(result)
return list_2
prime_list = [p for p in re_list() if 0 not in [p % d for d in range(2, int(p ** 0.5 + 1))]]
# 判断是否为素数
# number = []
# for p in range(2, maxNumber):
# z = True
# for d in range(2, int(p**0.5)+1):
# if p % d == 0:
# z = False
# break
# if z:
# (p)
print(prime_list)