基本数据类型及内置方法
1. 有列表['alex',49,[1900,3,18]],分别取出列表中的名字,年龄,出生的年,月,日赋值给不同的变量
l = ['alex', 49, [1900, 3, 18]] name = l[0] age = l[1] age_year = l[2][0] age_month = l[2][1] age_day = l[2][2] name, age, date = l year, month, day = date print('name:', name, 'age:', age, 'date:', year, month, day)
2. 用列表的insert与pop方法模拟队列
# FIFO:先进先出 l = [] for i in range(4): l.insert(i,i) print(l) for i in l: l.pop(0) print(l) l.pop(0) print(l)
3. 用列表的insert与pop方法模拟堆栈
# IFO:后进先出 l = [] for i in range(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, } print(msg_dic) p = 0 list_name = [] list_num = [] list_price = [] while True: name = input('购买商品:').strip() #输入股买商品 number = input('购买商品数量').strip() num = int(number) if name in msg_dic: # list_single = (name,msg_dic[name]*num,num) list_name.append(name) list_num.append(num) list_price.append(msg_dic[name]) p += int(msg_dic[name]*num) ask = input('是否继续购买:(Y or N)') if ask == 'Y': continue else: info = f''' name:{list_name} number:{list_num} s_price:{list_price} Total:{p} ''' print(info) else: print('商品输入错误,请重新输入') continue
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' print(s.count('hello')) print(s.count('alex')) print(s.count('say')) print(s.count('sb'))