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             绿色
33               43             黃色
34               44             蓝色
35               45             紫红色
36               46             青蓝色
37               47             白色
显示方式          意义
-------------------------
0               终端默认设置
1               高亮显示
4               使用下划线
5               闪烁
7               反白显示
8               不可见
例子:
\033[1;31;40m  
\033[0m         

python自学第三天,列表的更多相关文章

  1. Python自学:第三章 使用函数sort( )对列表进行临时排序

    # -*- coding: GBK -*- cars = ["bmw", "audi", "toyota", "subaru&qu ...

  2. Python自学:第三章 确定列表长度

    >>> cars = ["bmw", "audi", "toyota", "subaru"] > ...

  3. Python自学:第三章 倒着打印列表

    # -*- coding: GBK -*- #reverse: 相反的 cars = ["bmw", "audi", "toyota", & ...

  4. Python自学:第三章 使用方法sort( )对列表进行永久性排序

    cars = ["bmw", "audi", "toyota", "subaru"] cars.sort() print ...

  5. Python自学:第三章 弹出列表中任何位置处的元素

    motorcycles = ["honda", "yamaha", "suzuki"] first_owned = motorcycles. ...

  6. Python自学:第三章 在列表末尾添加元素与在列表中插入元素

    motorcycles = ['honda', 'yamaha' ,'suzuki'] motorcycles.insert(0, "ducati") print(motorcyc ...

  7. Python自学:第三章 修改列表元素

    motorcycles = ['honda', 'yamaha', 'suzuki'] print(motorcycles) motorcycles[0] = 'ducati' print(motor ...

  8. Python自学:第三章 使用列表中的各个值

    bicycles = ['trek','cannondale','redline','specialized'] message = "My first bicycle was a &quo ...

  9. Python自学:第三章 访问列表元素

    #输出并首字母大写 bicycles = ['trek','cannondale','redline','specialized'] print(bicycles[0].title()) 输出为: T ...

随机推荐

  1. 4.2 面向对象分析(二) CRC方法标识概念类

    CRC  又称为CRC索引卡片:CRC card  每张卡片代表一个类 Each card represents one class  每张卡片上写出这个类承担的职责.与其合作交互的其他类名   ...

  2. bzoj2565: 最长双回文串 pam

    题意:找一个串中的最长连续两个回文子串长度 题解:建两个回文树,一个正着,一个反着,每次add之后last的长度就是后缀最长的回文串长度,然后两边加一遍即可 /******************** ...

  3. leetcode-algorithms-17 Letter Combinations of a Phone Number

    leetcode-algorithms-17 Letter Combinations of a Phone Number Given a string containing digits from 2 ...

  4. js操作字符串的常用方法

    使用 substring()或者slice() 函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str=”jpg|bmp|gif|ico|png”; arr=the ...

  5. Oracle11g温习-第十八章:role管理

    2013年4月27日 星期六 10:52 role 的功能:简化用户的权限管理 建立角色——给角色授权——将角色授予用户/角色 2.查看系统建立的role SYS @ prod >  selec ...

  6. WDA基础七:TABStrip

    这个组件很少用. 一般用这个,是为了页面好看,还有就是布局排版的问题,因为多个页签其实占的是一块地... 新建ELEMENT TABStrip,右键tabstrip,插入页签,需要几个加几个... 加 ...

  7. ASP.NET MVC命名空间时引起错误的解决方法

    使用VS2012新建了一个Asp.net mvc5的项目,并把项目的命名空间名称更改了(Src更改为UXXXXX),然后就导致了以下错误 刚开始以后是项目的属性中的命名空间没有更改过来的问题,但我在重 ...

  8. weblogic补丁安装失败(Patch B25A is mutually exclusive and cannot coexist with patch(es): UIAL)

    由于曝出漏洞(CVE-2017-3248)需要将weblogic补丁更新至B25A,但是出现报错.如下: Conflict(s) detected - resolve conflict conditi ...

  9. windows7安装教程(vmware)

    这步是正确安装windows的关键,如果不设置那么安装时将不能识别出磁盘,造成安装不成功. 选择No进行自定义修饰,主要是保证C盘大小合适,其他盘可在安装完成之后再调整. 后续安装步骤全自动,完全不用 ...

  10. VMware workstation 14 Pro下载、安装及激活码

    虚拟机安装 1.百度搜索VMware应用程序 2.功能介绍 3.下载完成 4.开始安装 双击应用程序开始安装 5.点击“下一步” 6.勾选“我接受” 选择“下一步” 7.安装文件的选择:1.默认安装路 ...