天天看点

Python基础 6 ---- Python 元组+列表+字典+文件

     Python的元组、列表、字典数据类型是Python内置的数据结构。这些结构都是经过足够优化后的,所以如果使用好的话,在某些地方将会有很大的益处。

1元组

     个人认为就像C++的数组,Python中的元组有以下特性

任意对象的有序集合,这条没啥说的,数组的同性

通过偏移读取

一旦生成,不可改变

固定长度,支持嵌套

    代码:

上面的例子足以说明大部分了,使用元组时最重要的一点是“一旦生成,就不可变了”。

2 列表

     列表就像C++里的vector,所具有的特性也要比元组更多,更灵活,其特点总结如下

任意对象的有序集合

可通过偏移存取,注意,列表中的元素都是可变的,这是不同于元组的

长度可变,支持嵌套

还有一些类似java的对象引用机制

      由于列表的这些特性,使得列表在实际应用中被广泛使用,下面是一些例子。

 (1) 首先是基本用法

  代码

 (2) 索引和分片,赋值(单个元素赋值,分片赋值)

   代码

 (3) 添加、排序、删除操作

 (4)一些有趣的用法(来自论坛 id—咖啡舞者)

   去掉列表中每个元素头尾的空格

    把列表中,大于3的元素,乘以2:

   代码

    把列表1的每一个元素和列表2的每一个元素相乘:

    取获[0-10)的平方:

[x**2 for x in range(10)] 

 3

字典

     Python里的字典就像C++里的map,以键值对的方式存在并操作,其特点如下

通过键来存取,而非偏移量;

键值对是无序的;

键和值可以是任意对象;

长度可变,任意嵌套;

在字典里,不能再有序列操作,虽然字典在某些方面与列表类似,但不要把列表套在字典上

 (1) 基本操作

 (2) 修改,删除,添加

      在这里需要来一句,对于字典的扩充,只需定义一个新的键值对即可,而对于列表,就只能用append方法或分片赋值。

 (3)对字典的遍历

4 文件

   与C++的File类相比,Python的文件类要狭义一些

 (1) 文件写

     Python的一个open语句就打开了一个文件(当给定的文件不存在时,会自动建立一个新的文件)。open的第一个参数是文件名,第二个参数是操作模式,所谓操作模式就是你打开一个文件是用来干什么的,是读,还是写(当然操作模式不仅只有读和写)。还有一件事,操作完要记得关。

  (2) 文件读