「Python学习进阶」读取csv文件

2024-05-18 21:13

1. 「Python学习进阶」读取csv文件


「Python学习进阶」读取csv文件

2. csv文件怎么打开 使用Python读取和写入CSV文件

csv文件本质上是一个文本文件,具体的读取和写入方法有两种:
直接对csv文件进行文件读写操作,每一行是一条记录,按行读取即可,简单代码如下:
with open("XXX.csv","wr") as f:
            f.readline()
            f.write()
2.使用第三方库中的csv文件读写函数(本质上还是使用python的文件读写方法),如科学计算包pandas包中就有read_csv()  to_csv()等函数,其他的一些第三方包里也有,可以自行查询。
两种方法各有优劣,第一种方法的优点就是可控性强,但是代码相对较多,对于python2编码处理很麻烦;第二种方法的优点是代码量小,调用方便,处理编码问题相对容易(在函数中加一个encoding参数即可),但是代码内部比较复杂,可控性较差

3. Python csv模块(读写文件)

 CSV文件又称为逗号分隔值文件,是一种通用的、相对简单的文件格式,用以存储表格数据,包括数字或者字符。CSV是电子表格和数据库中最常见的输入、输出文件格式。
   通过爬虫将数据抓取的下来,然后把数据保存在文件,或者数据库中,这个过程称为数据的持久化存储。本节介绍Python内置模块CSV的读写操作。
    1)csv.writer() 
   csv模块中的writer类可用于读写序列化的数据,其语法格式如下:
   参数说明:
   csvfile:必须是支持迭代(Iterator)的对象,可以是文件(file)对象或者列表(list)对象。
   dialect:编码风格,默认为excel的风格,也就是使用逗号,分隔。
   fmtparam:格式化参数,用来覆盖之前dialect对象指定的编码风格。
   如果想同时写入多行数据,需要使用writerrows()方法,代码如下所示:
   aggs.csv文件内容:
    2)csv.DictWriter() 
   当然也可使用DictWriter类以字典的形式读写数据,使用示例如下:
   name.csv文件内容,如下所示:
    1)csv,reader() 
   csv模块中的reader类和DictReader类用于读取文件中的数据,其中reader()语法格式如下:
    2)csv.DictReader() 
   应用示例如下:
   输出结果:
   开课吧广场-人才学习交流平台

Python csv模块(读写文件)

4. python中怎么处理csv文件

什么是CSV


就是内容用逗号隔开,后缀是‘.csv’的文件。它可以被任何一个文本编辑器打开。如果用excel打开,它又可以是这样的:


END
读CSV


典型的可处理的csv文件,通常含有表头,也就是每列的列名。这样一来,每一行的内容就可以被当作是以表头为key的字典。于是可以使用csv定义的类:

class csv.DictReader(csvfile, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)

下面是官方的例子(Python 3)。我们看到,对于csv文件的内容,我们可以通过相应的tag,也就是字典的key来读取。

在实际使用过程中,为了分离代码和方便阅读,可以先把读取的内容转存到列表,随后再根据各个key进行分开处理(针对多列的情况)。

END
写CSV


同样的,写入的也是列表。使用的类:

class csv.DictWriter(csvfile, fieldnames, restval='', extrasaction='raise', dialect='excel', *args, **kwds)

官方例子:我们看到,有专门的函数来写入表头,没有表头数据是无法对应的。需要注意的是,对于下列语句,‘w’需要修改为‘wb’,否则每次写入会有多余空行
with open('names.csv', 'wb') as csvfile

5. 怎样读取CSV文件中的数据

不管是读取数据还是写入,R都是在工作路径中完成的。所以首先我们要知道我们的R所在的工作路径是在哪里。使用getwd()函数来获取我们的工作路径。

下面查看工作路径里面有哪些文件,使用dir()函数

如果你所想导入的数据并不在你当前的工作路径中,有两种方法可以解决。第一种就是把数据文件放到工作路径中,第二种方法就是更改工作路径。更改工作路径使用setwd()函数。比如你想要把工作路径设置成桌面

现在我读取我工作路径中,名字为hw1_data.csv的文件。使用read.csv()函数

也可以使用read.table()函数来读取csv格式的文件。由于csv文件的分隔符是“,”所以我们在用read.table()函数的时候,sep参数,我们要设定为sep=“,”

发现read.table()读出来的数据,列名并不是我们文件中的列名,而是V1,V2。。。我们需要加上header这个参数来修改这个问题

另外在read.table()函数族中还有很多参数,对我们读取数据都有帮助,大家可以去了解下。使用?read.table()进行了解

怎样读取CSV文件中的数据

6. python中怎么把csv文件读取的数据显示在网页上

python的标准库csv库主要是面向本地文件,就是说你的CSV文件得存储在你的电脑上。当进行网络数据采集的时候,很多文件都是在线的。不过有一些办法可以解决这个问题:
1,手动把CSV文件下载到本机,然后用Python定位文件位置;
2,写Python程序下载文件,读取之后再把源文件删除;
3,从网上直接把文件读成一个字符串,然后转换成一个StringIO对象,使它具有文件的属性。
虽然前两个方法也可以用,但是既然你可以轻易地把CSV文件保存在内存里,就不要再下载到本地占硬盘空间了。直接把文件读成字符串,然后封装成StringIO对象,让Python把它当做文件来处理,就不需要先保存文件了。下面的程序就是从网上获取一个CSV文件,然后把每一行都打印到命令行里:
[python] view plain copy
from io import StringIO  
import csv  

data = urlopen('httles/MontyPythonAlbums.csv').read().decode('ascii', 'ignore')  
dataFile = StringIO(data)  
csvReader = csv.reader(dataFile)  
for row in csvReader:  
print row  

7. 「Python学习进阶」创建csv文件


「Python学习进阶」创建csv文件