name = [‘zhangsan‘,‘lisi‘,‘wangwu‘,1,2,3,4,5,2,2]
name[0] #取列表第一个
name[-1] #取列表最后一个
name.index(‘wangwu‘) #元素的索引值,当有重复的元素时只会返回第一个元素的索引值
name.count(2) #对同一元素计数
name[0:2] name[-5:-1] #切片只能从左往右切
name.append(2333)
name.insert(2,‘wilbur‘) #在name[2]前插入元素‘wilbur’
name[3] = ‘zzz‘
name.pop() #删除末尾 name.remove(‘zhangsan‘) #删除指定元素 del name[2] #全局删除 del name[2:6] #切片删除
for i in name: print(i)
name.sort() 不同数据类型不能混排
排序规则为ASCII码顺序
name.reverse()
name+n2
name.expend(n2)
name.clear()
n2 = name.copy()
names = [‘zhangsan‘,‘lisi‘,‘wangwu‘,‘zhaoliu‘,‘shanshan‘,‘alex‘] for index,i in enumerate(names): if index%2 == 0: names[index] = -1 print(index, i) print(names)
names = [‘zhangsan‘,‘lisi‘,‘wangwu‘,‘zhaoliu‘,‘shanshan‘,‘alex‘,3,45,24,6,2,546,2] names2 = names[names.index(2)+1:] #获取第一个2的索引值后加一 print(names2.index(2)+names.index(2)+1) #打印第二个2的索引值
最后一个是购物车程序:
写一个循环,不断的问用户想买什么,用户选择一个商品编号,就把对应的商品添加到购物车里, 最终用户输入q退出时,打印购物车里的商品列表
1 # author:wilbur0402 2 products = [[‘Iphone8‘, 6888], [‘MacPro‘, 14800], [‘小米6‘, 2499], [‘Coffee‘, 31], [‘Book‘, 80], [‘Nike Shoes‘, 799]] 3 4 shopping_cart = [] 5 while True: 6 print(‘------products list------‘) 7 for index,i in enumerate(products): 8 print(‘%s.%s %s‘%(index,i[0],i[1])) 9 chioce = input(‘请输入你需要购买的序号:(0-5)‘) 10 if chioce.isdigit(): 11 chioce = int(chioce) 12 if chioce >= 0 and chioce < len(products): 13 shopping_cart.append(products[chioce]) 14 print(‘added %s to shopping cart!‘%products[chioce][0]) 15 else: 16 print(‘商品不存在!‘) 17 elif chioce == ‘q‘: 18 print(‘------你已购买以下商品------‘) 19 for index, i in enumerate(shopping_cart): 20 print(‘%s.%s %s‘ % (index, i[0], i[1])) 21 break 22 else: 23 print(‘输入有误!‘)
之前做这种题完全没有思路,各种需求混为一谈。在此我介绍一下我的方法:
1.先做出最基本的功能
这个练习最基本的功能就是:打印商品列表——用户输入——打印输入购买的商品
2.增加循环功能:
增加死循环,使其能不断询问用户
3.增加判断功能:
当用户输入为q时,退出并打印已购列表,或者当用户输入不正确时,返回信息
总结一句话就是:
基本功能——增加功能——完善功能
原文:https://www.cnblogs.com/wilbur0402/p/9351074.html