3/11作业

1、有列表['alex',49,[1900,3,18]],分别取出列表中的名字,年龄,出生的年,月,日赋值给不同的变量
list1 = ['alex', 49, [1900, 3, 18]]
name = list1[0]
age = list1[1]
year = list1[2][0]
mon = list1[0][1]
day = list1[0][2]

2、用列表的insert与pop方法模拟队列
trops = []
# 入队:
trops.insert(0, 'first')
trops.insert(1, 'second')
trops.insert(2, 'third')
print(trops)
# 出队:
print(trops.pop(0))
print(trops.pop(0))
print(trops.pop(0))
3. 用列表的insert与pop方法模拟堆栈
trops = []
# 入栈:
trops.insert(0, 'first')
trops.insert(1, 'second')
trops.insert(2, 'third')
print(trops)
# 出栈:
print(trops.pop(-1))
print(trops.pop(-1))
print(trops.pop(-1))
4、简单购物车,要求如下:
实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数以三元组形式加入购物列表,如果输入为空或其他非法输入则要求用户重新输入  
msg_dic = {
    'apple': 10,
    'tesla': 100000,
    'mac': 3000,
    'lenovo': 30000,
    'chicken': 10,
}

z = []
tag = True

while tag:
    x = input('输入商品名: ')
    y = input('输入购买个数:')
    if x in msg_dic:
        z.append(x)
        a = msg_dic[x]
        z.append(a)
        z.append(y)
        tag = False
    else:
        print('请重新输入')
print('购物清单:(商品名,价格,个数): ', tuple(z))
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]
k1 = []
k2 = []
for i in l:
    if i > 66:
        k1.append(i)
    elif i < 66:
        k2.append(i)
    else:
        pass
dict1 = {'k1': k1, 'k2': k2}
print(dict1)
6、统计s='hello alex alex say hello sb sb'中每个单词的个数

s = 'hello alex alex say hello sb sb'
print(s.count(' ') + 1)

 

 
 
posted @ 2020-03-11 22:25  风起千寻  阅读(171)  评论(0编辑  收藏  举报