1.列表
names=[] #这就是一个空列表
names=[1,5,2,3,4,5]#列表是用的中括号,每个元素是用逗号分开的。列表里面的元素是可以重复的。
names[-1]#表示的是取列表的最后一个元素
names[0]#表示的是取列表的第一个元素,取列表的元素是以下标以0开始
#切片
names[1:3]表示取得列表元素是从第二个元素到第三个元素 。所谓顾头不顾尾。
names[1:-1]表示取得列表的从第二个元素到倒数第二个元素
names[-3:-1]表示的取的列表是从倒数第二个元素到倒数第三个元素
names[-2:]表示的取的列表是从最后一个元素到倒数第二个元素
names[:2]表示的取的列表是从第一个元素到第二个元素
names[0:-1:2]#表示 起始,结尾,步长。这是跳着切
#切片中遇到0和-1下标的可以省略不写
#插入
names.append(8) #默认插到列表的最后
names.insert(下标值,元素)#定点插入
#修改
names[下标值]=元素 #修改列表中的某个元素
#删除
names.pop() #默认删除列表中的最后一个元素
del names[下标值]#定点删除元素,del 也可以删除变量
names.remove(元素)#删除某个元素
#查询
names.index(元素)#查询某个元素的下标值
#统计
names.count(元素)#查询某个元素在列表中总共有几个
#排序
names.sort()
#翻转
names.reverse() #把列表的顺序倒过来
#扩展
names2=[100,101]
names.extend(names2)#表示原列表元素中多了names2的元素,而names2列表中的元素不会消失。
#copy
names1=names.copy()#表示为浅copy,只copy第一层,第二层会随着改变的与 names1=names完全不一样,后面这是全部指向一个内存。
如果要完全copy就要引入copy模块
import copy
names1=copy.deepcopy(names)#重新完全复制了一个内存。 慎少用。
元组tuple
#是用小括号创建的,一旦创建,就只能查询,也叫只读列表
#只有两个方法
names.index(元素)#查询元素的下标值
names.count(元素)#统计
#!/usr/bin/env python
#-*- coding:utf-8 -*-
# Author:Hunter Yi
product_list=[
["IphoneX",8800],
["MAC Pro",18000],
["Watch",3000],
["洗衣粉",50]]
salary=input("请输入工资:")
if salary.isdigit():
salary=int(salary)
shopping_cart = []
while True:
for index, item in enumerate(product_list):#enumerate()表示同时取出下标和值
print(index, item)
else:
comfir = input("请选择商品编号:")
if comfir.isdigit():#isdigit()判断输入的字符是否为数字
comfir = int(comfir)
if(comfir<=len(product_list)-1 and comfir>=0):
product_price = product_list[comfir][1]
if salary >= product_price:
salary = salary - product_price
shopping_cart.append(product_list[comfir])
print("%s已经加入到购物车中去了,余额还剩:\033[35;1m%s\033[0m" %(product_list[comfir],salary))#高亮显示 紫色
else:
print("余额不足,请重新选择")
else:
print("对不起没有对应的商品,请重新输入")
continue
elif comfir=='q':
print("你已经买了 %s ,余额还剩:\033[1;31m%s\033[0m" %(shopping_cart,salary))#高亮显示 红色
exit()
else:
print("输入非法字符请重新输入")
continue
高亮显示
格式:\033[显示方式;前景色;背景色m
说明:
前景色 背景色 颜色
--------------------------------------
30 40 黑色
31 41 红色
32 42 绿色
35 45 紫红色
36 46 青蓝色
37 47 白色
显示方式 意义
-------------------------
0 终端默认设置
1 高亮显示
4 使用下划线
5 闪烁
7 反白显示
8 不可见
\033[1;31;40m
\033[0m