python入门作业——列表类型、元组、字典类型

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

list1 = ['alex',49,[1900,3,18]]
name = list1[0]
age = list1[1]
date = list1[2]

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

    队列特点:先进先出、后进后出

list2 = []
list2.insert(0,'1')
print(list2) # ['1']
list2.insert(0,'2')
print(list2) # ['2', '1']
list2.insert(0,'3')
print(list2) # ['3', '2', '1']
list2.pop()
print(list2) # ['3', '2']
list2.pop()
print(list2) # ['3']
list2.pop()
print(list2) # []

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

    堆栈特点:先进后出、后进先出

list2 = []
list2.insert(0,'1')
print(list2) # ['1']
list2.insert(0,'2')
print(list2) # ['2', '1']
list2.insert(0,'3')
print(list2) # ['3', '2', '1']
list2.pop(0)
print(list2) # ['2', '1']
list2.pop(0)
print(list2) # ['1']
list2.pop(0)
print(list2) # []

  4、简单购物车,要求如下:实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数以三元组形式加入购物列表,

              如果输入为空或其他非法输入则要求用户重新输入  

msg_dic={
'apple':10,
'tesla':100000,
'mac':3000,
'lenovo':30000,
'chicken':10,
}
print(msg_dic)
info =[]
while True:
    name = input('购买商品:')
    number = input('购买数量:')
    number = int(number)
    if name in msg_dic.keys() and number > 0:
        number = int(number)
        info.append((name,number,number * msg_dic[name]))
        for var in info:  # 一个商品一列  起到换行作用 方便观看
            print(var)
        n = input('是否继续购买?Y/N')
        if n == 'Y':
            continue
        else:
            break
    else:
        print('输入有误请重新输入')
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]
d ={'k1':[],'k2':[]}
for n in l[:]:
    if n < 66:
        d['k1'].append(n)
    elif n > 66:
        d['k2'].append(n)
print(d)

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

s='hello alex alex say hello sb sb'
s1 = s.split() # ['hello', 'alex', 'alex', 'say', 'hello', 'sb', 'sb']
d = {}
for i in s1[:] :
    d[i] = (s1.count(i)) # 在列表中查找这个单词的出现次数
print(d)

 

posted @ 2020-03-11 19:09    阅读(241)  评论(0编辑  收藏  举报