欢迎光临散文网 会员登陆 & 注册

《利用Python进行数据分析·第2版》第3章 Python的数据结构、函数和文件

2018-05-04 07:58 作者:绝不原创的飞龙  | 我要投稿

本章讨论Python的内置功能,这些功能本书会用到很多。虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的。

我们会从Python最基础的数据结构开始:元组、列表、字典和集合。然后会讨论创建你自己的、可重复使用的Python函数。最后,会学习Python的文件对象,以及如何与本地硬盘交互。

3.1 数据结构和序列

Python的数据结构简单而强大。通晓它们才能成为熟练的Python程序员。

元组

元组是一个固定长度,不可改变的Python序列对象。创建元组的最简单方式,是用逗号分隔一列值:

In [1]: tup = 4, 5, 6

In [2]: tup Out[2]: (4, 5, 6)

当用复杂的表达式定义元组,最好将值放到圆括号内,如下所示:

In [3]: nested_tup = (4, 5, 6), (7, 8

In [4]: nested_tup 

Out[4]: ((4, 5, 6), (7, 8))

tuple可以将任意序列或迭代器转换成元组:

In [5]: tuple([4, 0, 2]) Out[5]: (4, 0, 2

In [6]: tup = tuple('string'

In [7]: tup 

Out[7]: ('s', 't', 'r', 'i', 'n', 'g')

可以用方括号访问元组中的元素。和C、C++、JAVA等语言一样,序列是从0开始的:

In [8]: tup[0

Out[8]: 's'

元组中存储的对象可能是可变对象。一旦创建了元组,元组中的对象就不能修改了:

In [9]: tup = tuple(['foo', [1, 2], True]) 

 In [10]: tup[2] = False

--------------------------------------------------------------------------- TypeError                                 Traceback (most recent call last) 

<ipython-input-10-c7308343b841> in <module>() 

----> 1 tup[2] = False

TypeError: 'tuple' object does not support item assignment

如果元组中的某个对象是可变的,比如列表,可以在原位进行修改:

In [11]: tup[1].append(3

In [12]: tup 

Out[12]: ('foo', [1, 2, 3], True)

可以用加号运算符将元组串联起来:

In [13]: (4, None, 'foo') + (6, 0) + ('bar',) 

Out[13]: (4, None, 'foo', 6, 0, 'bar')

元组乘以一个整数,像列表一样,会将几个元组的复制串联起来:

In [14]: ('foo', 'bar') * 4

Out[14]: ('foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'bar')

对象本身并没有被复制,只是引用了它。

阅读全文:http://t.cn/Run6gGa


《利用Python进行数据分析·第2版》第3章 Python的数据结构、函数和文件的评论 (共 条)

分享到微博请遵守国家法律