1、输入一个字符串判断是否是回文字符串(利用列表切片和不用切片分别完成)。
#切片
x = input("请输入字符串:")
s = x[::-1]
if s == x:
print("这是回文字符串")
else:
print("这不是回文字符串")
#非切片
s = input('请输入字符串:')
a = len(s)
i = 0
count = 1
while i <= (a/2):
if s[i] == s[a-i-1]:
count = 1
i += 1
else:
count = 0
break
if count == 1:
print('这是回文字符串')
else:
print('这不是回文字符串')
运行截图:
2、随机生成 [0,10]范围的整数,分别组成集合A和集合B,输出A和B的内容、长度、最大值、最小值以及它们的并集、交集和差集。
import random
def fun():
List = []
for j in range(5):
x = random.randint(0,10)
List.append(x)
return set(List)
A = fun()
B = fun()
print(str.format("集合的内容,长度,最大值,最小值分别为:\n{0} {1} {2} {3}",A,len(A),max(A),min(A)))
print(str.format("{0} {1} {2} {3}",B,len(B),max(B),min(B)))
print(str.format("A和B的并集,交集和差集分别为:\n{0} {1} {2} ",A|B,A&B,A-B))
运行截图:
3、取出"My house is full of toys"中每个单词的首字母并存储到列表对象中,要求给出两个版本的实现:不使用列表推导式和使用列表推导式。
s.split() #将字符串s按照空格分隔,返回分隔后的字符串列表
[ i for I in range(10) if I%2==0]
#使用列表推导式
A = "My house is full of toys"
B = list()
A = A.split()
for i in range(0,len(A)):
B.append(A[i][0])
print(B)
#不使用列表推到式
A = "My house is full of toys"
B = list()
A = A.split()
for i in range(0,len(A)):
B.append(A[i][0])
print(B)
运行截图:
4、已知,以下食物每100g的卡路里如下:
小米粥 45,粗粮馒头 223,全麦面包 235,瘦猪肉 143,鸡翅 194,培根 181,火腿肠 212。
①建立一个空的字典,把上述键值对依此添加进去。通过循环形式,依次显示所有元素,显示格式如“我吃了二两”+“小米粥”,“增加了”+“45”卡路里。
②设计一个“你想知道哪种食物的卡路里?”系统,系统运行时用户可以输入要查询的食物名称,系统显示该食物对应的热量,如果用户输入了不存在的食物,则系统提示“没有该食物的数据!”
K = {'小米粥': 45, '粗粮馒头': 223, '全麦面包': 235, '瘦猪肉': 143, '鸡翅': 194, '培根': 181, '火腿肠': 212}
A = list(K.keys())
B = list(K.values())
for i in range(0, len(K)):
print("我吃了二两+" + A[i] + " 增加了+" + str(B[i]) + "卡路里")
temp = input("输入要查找的食物:")
print(K.get(temp, "找不到此食物"))
temp2 = input("输入要查找的食物:")
print(K.get(temp2, "找不到此食物"))
运行截图: