在《Python中csv文件的操作3》中提到,可以将一维数据写入到csv文件中。除了一维数据,二维数据也可以直接写入到csv文件中。
1 二维数据介绍
1.1 二维数组的定义
二维数据是由多个一位数据构成的,是一维数据的组合形式,可以用二维列表表示。列表的每个元素对应二维数据的一行,这个元素本身也是列表,如图1所示。
图1 二维数据的定义
从图1中可以看出,stu是一个二维列表,因为它的每个元素是一维列表,可以把stu看作是一个4行4列的数据。
1.2 二维数组的访问
可以通过下标来访问二维数组,代码如图2所示。
图2 二维数组的访问
从图2中可以看出,stu[1][2]表示stu的第2行第3列的数据;stu[3]表示stu的第4列数据。
2 向csv文件中写入二维数据
向csv文件中写入二维数据的代码如图3所示。
图3 向csv文件中写入二维数据
其中,第1-6行是定义的二维数组;第7行使用with as语句打开指定的csv文件,第8-9行使用for循环逐行向csv文件中写入数据,“学生.csv”文件的内容如图4所示。
图4 “学生.csv”文件的内容
3 从csv文件中读取二维数据
从csv文件中读取二维数据的代码如图5所示。
图5 从csv文件中读取二维数据
其中,第3-4行使用for循环逐行读取csv文件中的内容,该内容保存在变量s中。调用strip()方法去掉数据中的换行符,之后调用split()函数以逗号为分隔符将读取的内容进行分隔,此时得到的是一个元素为字符串的列表(一维数组),最后将该列表添加到stu中。此时stu的元素是列表,因此stu是一个二维数据,其值如图6所示。
图6 二维数据stu