python自学第三天,列表
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
python自学第三天,列表的更多相关文章
- Python自学:第三章 使用函数sort( )对列表进行临时排序
# -*- coding: GBK -*- cars = ["bmw", "audi", "toyota", "subaru&qu ...
- Python自学:第三章 确定列表长度
>>> cars = ["bmw", "audi", "toyota", "subaru"] > ...
- Python自学:第三章 倒着打印列表
# -*- coding: GBK -*- #reverse: 相反的 cars = ["bmw", "audi", "toyota", & ...
- Python自学:第三章 使用方法sort( )对列表进行永久性排序
cars = ["bmw", "audi", "toyota", "subaru"] cars.sort() print ...
- Python自学:第三章 弹出列表中任何位置处的元素
motorcycles = ["honda", "yamaha", "suzuki"] first_owned = motorcycles. ...
- Python自学:第三章 在列表末尾添加元素与在列表中插入元素
motorcycles = ['honda', 'yamaha' ,'suzuki'] motorcycles.insert(0, "ducati") print(motorcyc ...
- Python自学:第三章 修改列表元素
motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) motorcycles[0] = 'ducati' print(motor ...
- Python自学:第三章 使用列表中的各个值
bicycles = ['trek','cannondale','redline','specialized'] message = "My first bicycle was a &quo ...
- Python自学:第三章 访问列表元素
#输出并首字母大写 bicycles = ['trek','cannondale','redline','specialized'] print(bicycles[0].title()) 输出为: T ...
随机推荐
- lanmp环境中创建个软连接
进入default,创建关于框架的链接 然后编辑配置文件 这样就可以在线上访问了.
- 宽度优先搜索BFS(Breadth-First-Search)
Breadth-First-Search 1. 与DFS的异同 相同点:搜索所有可能的状态. 不同点:搜索顺序. 2. BFS总是先搜索距离初始状态近的状态,它是按照:开始状态->只需一次转移就 ...
- java解析前端请求接口的全部入参
第一种: public static String getRequestInput(HttpServletRequest request) { StringBuilder sb = new Strin ...
- 使用navigator.userAgent.toLowerCase()判断移动端类型
使用navigator.userAgent.toLowerCase()判断移动端类型 判断设备,区分Android,iphone,ipad和其它 var ua = navigator.userAgen ...
- tar打包时的排除选项
1. 在命令行排除文件时,用 --exclude, 可以用多个--exclude . 可以用=号,也可以不用 如 tar -cvf ./aaa.tar ./tvc --exclude ...
- webapp检测安卓app是否安装并launch
1. cordova插件 1)查看所有已安装的安卓app https://www.npmjs.com/package/cordova-plugin-packagemanager A simple pl ...
- 一、集合框架(Collection和Collections的区别)
一.Collection和Map 是一个接口 Collection是Set,List,Queue,Deque的接口 Set:无序集合,List:链表,Queue:先进先出队列,Deque:双向链表 C ...
- JavaScript构造函数详解
构造函数就是初始化一个实例对象,对象的prototype属性是继承一个实例对象. 构造函数注意事项: 1.默认函数首字母大写 2.构造函数并没有显示返回任何东西.new 操作符会自动创建给定的类型并返 ...
- 使用virustotal VT 查询情报——感觉远远没有微步、思科好用,10万条数据查出来5万条都有postives >0的记录,尼玛!!!
1399 git clone https://github.com/VirusTotal/c-vtapi.git 1400 cd c-vtapi/ 1402 sudo apt-get install ...
- windows7安装教程(vmware)
这步是正确安装windows的关键,如果不设置那么安装时将不能识别出磁盘,造成安装不成功. 选择No进行自定义修饰,主要是保证C盘大小合适,其他盘可在安装完成之后再调整. 后续安装步骤全自动,完全不用 ...