一、猜数游戏
- 有一个数列:8,4,2,1,23,344,12
- 循环输出数列的值
- 求数列中所有数值的和
- 猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数
实现代码如下:
list1 = [8, 4, 2, 1, 23, 344, 12]
sum = 0
for x in list1:
print('数字的值:', x)
sum += x
print('和:%d' % sum)
num = int(input('请输入你要查找的数字:'))
if list1.count(num) == 0:
print('数字不存在!')
else:
print('存在')
运行结果:
二、在控制台显示5件特价商品名称
实现代码如下:
list1 = ["Nike背包", "Adidas运动衫", "李宁运动鞋", "Kappa外套", "361腰包"]
print("本次特价活动商品有:")
for x in list1:
print(x)
运行结果:
三、购物金额结算
以表格的形式输出5笔购物金额及总金额
- 实现步骤
- 创建一个长度为5的容器(列表、元祖或字典),存储购物金额
- 循环输入5笔购物金额,并累加总金额
- 利用循环输出5笔购物金额,最后输出总金额
实现代码如下:
list = {}
sum = 0
for i in range(5):
pay_money = float(input("请输入第"+str(i+1)+"笔购物金额:"))
list[i+1] = pay_money
sum = sum+pay_money
print("序号 金额(元)")
for k,v in list.items():
print(k," ",v)
print("总金额 ",sum)
运行结果:
四、循环录入5位学员成绩,进行升序排列后输出结果
提示:sort()方法:对数组进行升序排列
实现代码如下:
arrScore =[]
i = 1
while i<= 5:
s = float(input('请录入第%d个人的成绩:'%i))
i += 1
arrScore.append(s)
arrScore.sort()
print('学员成绩按升序排列:',arrScore)
运行结果:
五、字符逆序输出
- 将一组乱序的字符进行排序
- 进行升序和逆序输出
实现代码如下:
from random import shuffle
data=list(range(10))
shuffle(data)
print('原字符序列:',data)
print('升序排序后:',sorted(data))
print('逆序输出为:',list(reversed(sorted(data))))
运行结果:
六、向有序序列中插入字符
- 在上一个练习的基础上改进
- 一组有序的字符序列a、b、c、e、f、p、u、z,向此字符序列中插入一个新的字符,要求插入之后字符序列仍保持有序
实现代码如下:
import bisect
a = [1, 2, 4, 8, 12, 14, 19]
item = 13
position = bisect.bisect(a, item)
print('原字符序列是:',a)
print('待插入的字符是:',item)
print('插入字符的下标是:',position) # 如果放到有序序列中,应该存在的索引位置
# 使用列表的insert方法插入对应位置
a.insert(position, item)
print('插入后的字符序列是:',a)
运行结果:
七、求最低价格
- 求出4家店的最低手机价格
实现步骤
-
- 定义容器(列表、元祖、字典)存储价格,并利用循环输入
- 定义变量min保存当前的最低价
- 将min和数组中的其余元素依次比较
实现代码如下:
print('请输入四家店的价格:')
min_Price =0
arrPrice = []
i = 1
while i<= 4:
s = int(input('请输入第%d家店的价格:'%i))
i += 1
arrPrice.append(s)
arrPrice.sort()
for min_Price in arrPrice:
if s < min_Price:
min_Price = s;
print('最低的价格是:',min_Price)
运行结果: