Ⅷ:作业

1.有列表['alex',49,[1900,3,18]],分别取出列表中的名字,年龄,出生的年,月,日赋值给不同的变量

l = ['alex',49,[1900,3,18]]
name = l[0]
age = l[1]
birth_y = l[2][0]
birth_m = l[2][1]
birth_d = l[2][2]
print('{name} {age} {y}-{m}-{d}'.format(name=name, age=age, y=birth_y, m=birth_m, d=birth_d))

2.用列表的insert与pop方法模拟队列

l=[]
for i in range(1, 4):
    l.insert(i, i)
    print(l)
for i in l:
    l.pop(0)
    print(l)
l.pop(0)
print(l)

3.用列表的insert与pop方法模拟堆栈

l=[]
for i in range(1, 4):
    l.insert(i, i)
    print(l)
for i in l:
    l.pop()
    print(l)
l.pop()
print(l)

4.简单购物车,要求如下:

实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数以三元组形式加入购物列表,如果输入为空或其他非法输入则要求用户重新输入  

# msg_dic={
# 'apple':10,
# 'tesla':100000,
# 'mac':3000,
# 'lenovo':30000,
# 'chicken':10,
# }

shop_car = []
print(msg_dic)
while True:
    inp_name = input('请输入购买的商品名:').strip()
    inp_number = input('请输入购买的数量:').strip()
    if inp_name in msg_dic:
        t = (inp_name, msg_dic[inp_name]*int(inp_number), int(inp_number))
        shop_car.append(t)
        print('购物车列表(商品名,总价,数量):{list}'.format(list=shop_car))
    elif inp_name == '' or inp_number == '':
        print('输入为空,请重新输入')
    else:
        print('暂无该商品,请重新输入')

5.有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中

即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

l = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]
l1 = []
l2 = []
dic={}
for i in l:
    if i > 66:
        l1.append(i)
    elif i < 66:
        l2.append(i)
dic.update({'k1': l1, 'k2': l2})
print(dic)

6.统计s='hello alex alex say hello sb sb'中每个单词的个数

s = 'hello alex alex say hello sb sb'
ls = s.split(' ')
dic = {}
for i in ls:
    if i in dic:
        dic[i] += 1
    else:
        dic[i] = 1
print(dic)

猜你喜欢

转载自www.cnblogs.com/qujiu/p/12465698.html