python入门学习:2.列表简介

关键点:列表

2.1 列表是什么2.2 修改、添加和删除元素2.3 组织列表

2.1 列表是什么

  列表,是由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中元素之间可以没有任何关系。
  在python中,用方括号[]来表示列表,并用逗号来分割其中的元素。

1bicycles = ['trek','cannondale','redline','specialized']
2print(bicycles)

2.1.1 访问列表元素
  python访问列表元素和c语言中数组类似,类似数组名下标访问方式,通过列表变量名加索引也可以访问指定位置的元素。

1bicycles = ['trek','cannondale','redline','specialized']
2print(bicycles[0])

2.2.2 索引从0开始而不是1
  在python中第一个列表元素的索引为0,而不是1.在大多数编程语言中都是如此,这与列表操作的底层实现相关。

1bicycles = ['trek','cannondale','redline','specialized']
2print(bicycles[1])
3print(bicycles[3])

2.2 修改、添加和删除元素

2.2.1 修改列表元素
  修改列表元素的语法与访问列表元素的语法类似。要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。

1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3motorcycles[0] = 'ducati'
4print(motorcycles)

2.2.2 在列表中添加元素

  • 在列表末尾添加元素
      在列表中添加元素时,最简单的方式是将元素附加到列表末尾。在列表末尾添加元素通过方法append
1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3motorcycles .append('ducati')
4print(motorcycles)
  • 在列表中插入元素
      1. 使用del语句删除元素(给出删除元素的位置)
1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3del motorcycles[0]
4print(motorcycles)

  2. 使用方法pop()删除元素
  方法pop()可删除列表末尾的元素,并让你能够接着使用它。术语弹出(pop)源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。

1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3pop_motorcycles = motorcycles.pop()
4print(motorcycles)
5print(pop_motorcycles )
6#打印
7['honda', 'yamaha', 'suzuki']
8['honda', 'yamaha']    #弹出后的新列表
9suzuki                 #弹出的值存入pop_motorcycles

  3. 弹出列表中的任何位置处的元素
  通过pop()来删除列表中任何位置的元素,只需要在括号中指定要删除的元素索引即可。

1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3#弹出motorcycles[0]
4pop_motorcycles = motorcycles.pop(0) 

  4. 根据值删除元素。
  如果你不知道要从列表中删除的值所处的位置,只知道要删除的元素的值,可使用remove(),方法remove只能删除第一个指定的值,如果要删除的值可能在列表出现多次,就需要多次删除。

1motorcycles = [ 'honda','yamaha','suzuki']
2print(motorcycles)
3motorcycles.remove('ducati')
4print(motorcycles)

2.3 组织列表

2.3.1 使用sort()对列表进行永久性排序
  python方法sort()让你对列表轻松的排序。下面按字母排序

 1cars = ['bmw','audi','toyota','subaru']
2#正向排序
3cars.sort()
4print(cars)
5
6['audi', 'bmw', 'subaru', 'toyota']
7#反向排序
8cars.sort(reverse = True)
9print(cars)
10
11['toyota', 'subaru', 'bmw', 'audi']

2.3.2 使用sorted()对列表进行临时排序
  要保留例变元素原来的顺序,同时以特定的顺序呈现它们,可以使用函数sorted()。函数sorted()让你能够按特定的顺序显示列表元素,同时不影响它们在列表中原始排列顺序。

 1cars = ['bmw','audi','toyota','subaru']
2
3print("here is the original list:")
4print(cars)
5
6print("\nhere is the secoend list:")
7print(sorted(cars))                  #cars 结构不变
8
9print("\nhere is the original list again:")
10print(cars)

2.3.3 倒序打印列表
  反转列表使用方法reverse(),反转元素的排列顺序

1cars = ['bmw','audi','toyota','subaru']
2print(cars)
3cars.reverse()
4print(cars)

2.3.4 确定列表长度
  使用len()快速获取列表的长度。

1cars = ['bmw','audi','toyota','subaru']
2print(len(cars))
3
44

python入门学习:2.列表简介的更多相关文章

  1. 【Python入门学习】列表生成和函数生成器的方式实现杨辉三角

    列表生成: L = [i for i in range(10)] 列表生成器: g = (i for i in range(10)) 函数生成器使用的关键字yield实现 例如fib生成器 def f ...

  2. python入门学习:3.操作列表

    python入门学习:3.操作列表 关键点:列表 3.1 遍历整个列表3.2 创建数值列表3.3 使用列表3.4 元组 3.1 遍历整个列表   循环这种概念很重要,因为它是计算机自动完成重复工作的常 ...

  3. python入门学习:6.用户输入和while循环

    python入门学习:6.用户输入和while循环 关键点:输入.while循环 6.1 函数input()工作原理6.2 while循环简介6.3 使用while循环处理字典和列表 6.1 函数in ...

  4. python入门学习:9.文件和异常

    python入门学习:9.文件和异常 关键点:文件.异常 9.1 从文件中读取数据9.2 写入文件9.3 异常9.4 存储数据 9.1 从文件中读取数据 9.1.1 读取整个文件  首先创建一个pi_ ...

  5. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  6. python入门学习:5.字典

    python入门学习:5.字典 关键点:字典 5.1 使用字典5.2 遍历字典5.3 嵌套 5.1 使用字典   在python中字典是一系列键-值对.每个键都和一个值关联,你可以使用键来访问与之相关 ...

  7. python入门学习:4.if语句

    python入门学习:4.if语句 关键点:判断 4.1 一个简单的测试4.2 条件测试4.3 if语句 4.1 一个简单的测试   if语句基本格式如下,注意不要漏了冒号 1if 条件 :2     ...

  8. python入门学习:8.类

    python入门学习:8.类 关键点:类 8.1 创建和使用类8.2 使用类和实例8.3 继承8.4 导入类 8.1 创建和使用类   面向对象编程是最有效的软件编写方法之一.在面向对象编程中,你编写 ...

  9. Python入门学习:1.变量和简单的数据类型

    python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用   变量,顾名思义是一个可变的量, ...

随机推荐

  1. Eclipse中提示svn: is already locked的解决办法

    eclipse的svn提交不了,报错.提示 svn: is already locked   解决办法:右键项目-------Team------Refresh/Cleanup

  2. Redis 持久化之RDB和AOF

    Redis 持久化之RDB和AOF Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File).如果你想快速了解和使用RDB和AOF,可以直 ...

  3. jquery中each中使用break和continue

    在jquery中each中直接使用break或者continue会提示:必须在循环中使用.会报错不能直接使用. 但是,是不是就不能用呢,答案是的,但是换种方法可以达到相同的效果: 可以只用return ...

  4. linux 下修改mysql下root 权限来允许远程连接

    MySQL默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接. 其操作简单,如下所示: 1. 进入mysql: /usr/local/mysql/bin/ ...

  5. jQuery 事件 - ready() 方法

    转载:http://www.w3school.com.cn/jquery/jquery_hide_show.asp 实例 在文档加载后激活函数: $(document).ready(function( ...

  6. express 对数据库数据增删改查

    接着 http://www.cnblogs.com/cynthia-wuqian/p/6560548.html (1)概念 Schema(属性) :一种以文件形式存储的数 据库模型骨架,不具备数据库的 ...

  7. Unity3D手机斗地主游戏开发实战(02)_叫地主功能实现

    大体思路 前面我们实现了点击开始游戏按钮,系统依次给玩家发牌的逻辑和动画,并展示当前的手牌.这期我们继续实现接下来的功能--叫地主. 1.首先这两天,学习了DOTween,这是一个强大的Unity动画 ...

  8. 在Arcmap中加载互联网地图资源的4种方法

    前一段时间想在Arcmap中打开互联网地图中的地图数据,如影像数据.基础地图数据等,经过简单研究目前总结了四种方法,整理下与大家分享,有些内容可能理解有误,希望大家多多指教.4种方法如下: a)    ...

  9. 【转载】java架构师进阶之路

    Java架构师,应该算是一些Java程序员们的一个职业目标了吧.很多码农码了五六年的代码也没能成为架构师.那成为Java架构师要掌握哪些技术呢,总体来说呢,有两方面,一个是基础技术,另一个就是组织能力 ...

  10. Android 逆向实战篇(加密数据包破解)

    1. 实战背景由于工作需要,要爬取某款App的数据,App的具体名称此处不便透露,避免他们发现并修改加密逻辑我就得重新破解了. 爬取这款App时发现,抓包抓到的数据是加密过的,如图1所示(原数据较长, ...