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 ...
随机推荐
- 优先队列优化dij算法
之前已经弄过模板了,但那个复杂一点,这个就是裸的dij,用起来更方便 输入格式:n,m,s,d分别是点数,边数,起点,终点 之后m行,输入x,y,z分别是两点即权值 题目链接:https://www. ...
- 女性睾酮水平高(High Testosterone Levels in Women)
在外国网站了解睾酮高的一些资料,顺便记录生活点滴. 摘自网址:https://www.healthline.com/health/high-testosterone-in-women 高睾酮的妇女 睾 ...
- 『TensorFlow Internals』笔记_系统架构
一.架构概览 TensorFlow 的系统结构以 C API 为界,将整个系统分为前端和后端两个子系统: 前端系统:提供编程模型,负责构造计算图: 后端系统:提供运行时环境,负责执行计算图,后端系统的 ...
- javaee登录界面
首先在此之前我们应该正确安装数据库,以及eclipse(javaee)文件包. 1.首先在javaee中建立新的项目 2.右键点击WebContent-New-JSP File,新建jsp(动态)文件 ...
- js时间与时间戳互相转换
var _time1 = Date.parse(new Date(‘2017-05-02 00:00:00’))/1000; //将设定的日期转换为时间戳 _time1 = getLocalTime( ...
- LINQ 初步了解
.NET Framework 3.5的新特性 Language Integrated Query,即语言集成查询 查询 和语言结合关系数据库里的信息使用的XML文档保存在本地的DataSet内存中的L ...
- using强制对象清理资源 【转】
转 http://www.cnblogs.com/Legolas/p/detail-of-using.html using肯定所有人都用过,最简单的就是使用using引入命名空间,然后就是引入别名,简 ...
- UI基础四:简单的assign block
经常会有需求让在标准的order加个assign block,那就来简单说一下: 1.创建assign block组件ZXXXXXX 2.添加BTORDER节点和GUID属性 3.创建表视图(可配置, ...
- WDA基础三:简单的INPUT选择,简单的TABLE显示
先从基本的开始,简单的单选和TABLE显示 1.创建选择条件节点,CONTEXT页签,右键CONTEXT创建NODE,对应1:1 1:1 lead selection 2.创建结果节点,对应0:n ...
- Spring注解之@Retention
作用是定义被它所注解的注解保留多久,一共有三种策略,定义在RetentionPolicy枚举中: package java.lang.annotation; /** * Annotation rete ...