1.编写程序,以每行5个的形式输出3-100以内的所有的素数。
s = 0
for i in range(2, 100):
for j in range(2, i):
if i % j == 0:
break
else:
print(i, end=" ")
s += 1
if s % 5 == 0:
print("\n")
break
2.生成一个列表,列表元素分别为[1**1, 2**2, 3**3,...9**9]
li = []
for i in range(1, 10):
li.append(i ** i)
print(li)
3.找出1~10之间所有偶数,返回一个列表,包含以这个偶数为半径的圆的面积。
import math
li = []
for i in range(2, 11, 2):
if i % 2 == 0:
area = math.pi * i * i
li.append(area)
print(li)
4.假设有三个列表: Istwho=["小马","小羊,"小鹿"], Istwhere["草地上","电影院","家里"], Istwhat=["看电影","听故事","吃晚饭"]。写出所有造句结果.
Istwho = ["小马", "小羊", "小鹿"]
Istwhere = ["草地上", "电影院", "家里"]
Istwhat = ["看电影", "听故事", "吃晚饭"]
for i in Istwho:
for j in Istwhere:
for k in Istwhat:
print(i, "在", j, k)
5.已知list = [1,2,3,4,5,6,7,8,9,10]
(1)将列表list中的元素按奇数和偶数进行过滤,将结果分别存储到2个新列表list1和list2中
(2)将list1中的元素作为十位数和list2中对应位置的元素相加,将结果保存到列表list3中
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list1 = []
list2 = []
for i in list:
if i % 2 == 0:
list1.append(i)
else:
list2.append(i)
print(list1)
print(list2)
list3 = []
for j in range(len(list1)):
for k in range(len(list2)):
list3.append(list1[j] * 10 + list2[k])
print(list3)
6.某学校新招聘了8名教师,已知该学校有3个空闲办公室且工位充足,现需要随机安排这8名教师的工位。要求编写程序,实现将8名教师随机分配到办公室的功能。
import random
l = [1, 2, 3]
n = ["a", "b", "c", "d", "e", "f", "g", "h"]
r = [[], [], []]
for i in n:
c = random.choice(l)
r[c - 1].append(i)
for i in range(len(r)):
print("第%d个办公室共分配%d个人,分别是:" % (i + 1, len(r[i])))
for j in r[i]:
print(j, end=" ")
print()
7.随机生成50个1到30之间的整数,编写程序实现删除该50个整数中重复的数据,并输出删除前与删除后的数据。
# 方法一
import random
l1 = []
for i in range(50):
a = random.randint(1, 30)
l1.append(a)
print(l1)
l2 = list(set(l1))
print(l2)
# 方法二
import random
l1 = []
l2 = []
for i in range(50):
a = random.randint(1, 30)
l1.append(a)
print(l1)
for i in l1:
if i not in l2:
l2.append(i)
print(l2)
8.系统里面有多个用户,用户的信息目前保存在列表里:users=[“root”,”admin”],passwd=[“123”,”456”],请编写程序,判断用户是否能成功登录,具体要求如下:
(1)判断用户是否存在:如果存在,判定用户密码是否正确,如果正确登录成功,退出循环,如果密码错误,重新登录,共有三次机会
(2)如果用户不存在,重新登录,总共有三次机会
users = ["root", "admin"]
passwd = ["123", "456"]
j = 3
while True:
a = input("请输入用户名:")
b = input("请输入密码:")
if a in users:
if b in passwd:
print("登录成功")
break
else:
j -= 1
print("密码错误,请重新输入,你还剩%d次机会" % j)
if j == 0:
print("你的机会已用完")
9.现有若干个学生名单,存放在列表中,要求编写程序查找某个学生在该班中是否存在,若存在,将其删除,若该班同名同姓的不只是一个,则将其全部删除。
l = ["a", "b", "c", "d", "e", "f", "a", "a"]
w = input("请输入学生的名字:")
while True:
if w in l:
print("学生存在")
l.remove(w)
else:
print("学生不存在")
break
print("学生名单为:%s" % l)
10.给出一个字符串,统计每个字符出现的个数
d = dict()
string = str(input("请输入字符串:"))
for i in string:
if i in d.keys():
d[i] = d[i] + 1
else:
d[i] = 1
for i, k in d.items():
print(i, ":", k)
11.输入一行字符串,统计字符串中数字字符,字母字符,空格字符及其它字符的个数,并输出统计后的结果.
str = input("请输入一行字符串:")
zimu = 0
num = 0
kongge = 0
other = 0
for i in range(len(str)):
if str[i].isalpha():
zimu += 1
elif str[i].isdigit():
num += 1
elif str[i].isspace():
kongge += 1
else:
other += 1
print("字母的个数为:", zimu)
print("数字的个数为:", num)
print("空格的个数:", kongge)
print("其他字符的个数为:", other)
12.给出一个列表li_one = [1, 2, 1, 2, 3, 5, 4, 3, 5, 7, 4, 7, 8],移除掉相同的数字(去重)
li_one = [1, 2, 1, 2, 3, 5, 4, 3, 5, 7, 4, 7, 8]
d = dict()
for i in li_one:
if i in d.keys():
d[i] = d[i] + 1
else:
d[i] = 1
for i, k in d.items():
if k > 1:
li_one.remove(i)
print(li_one)