python csv读取方法及常用的csv读取代码
Posted 菩提本无树007
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python csv读取方法及常用的csv读取代码相关的知识,希望对你有一定的参考价值。
csv文件是一种压缩文件格式,在网络上被广泛使用。csv文件在处理时会被转换成二进制文件,其中包含数据、文本和图像等。下面就是我们使用 python读取 csv文件的过程。 我们在进行 csv文件读取的时候,一般会有几种方法: 1、直接打开文件,然后通过 Python自带的第三方库 csvba进行读取; 2、将压缩后的数据进行解压,解压之后使用 python读取; 3、在 python中使用第三方库 csvba进行解压,然后使用 python读取。 以上三种方法都是在已有的压缩包内解压,对压缩包进行读取。
-
一、直接打开文件
在这种情况下,我们需要先打开 csv文件,然后再对它进行解压。 由于我们的目的是打开文件,因此在打开文件之前需要先对文件进行封装。在 Python中有两个常用的封装方法,分别是 seconds和 password。 seconds是一个文件的名称,而 password则是一个文件的密码。使用 python自带的第三方库 csvba对文件进行封装,使用下面的代码就可以很容易地打开一个 csv文件: 在输出结果中可以看到我们有两个结果: 其中一个结果是用来打开这个文件,另一个结果则是用来保存这个文件。我们在获取到这个结果之后,可以使用 python中的第三方库 csvba将其保存起来。 csvba能够对压缩包进行解压,因此它可以将压缩包内的所有文件解压出来。下面就来看看 csvba是如何做到这一点的: 我们可以看到,通过 csvba解压后,会得到一个压缩包的目录结构: 我们可以对这个目录结构进行修改来获取文件内的数据。这里使用了两个方法: 第一种方法是利用 pip命令来获取当前目录下所有文件的路径,并使用这个路径中的任意一个文件来进行解压。注意这里不能将文件本身也解压出来,而是要先对其进行解压缩。使用 pip命令能够获取到 csv文件的所有目录,然后可以通过上述步骤对其进行解压。 这里使用了一个简单的 python函数:
-
二、解压
使用第三方库 csvba进行解压,这个方法是最简单的方法,不过要注意解压的时候需要选择解压路径。 具体方法是:在 python中输入“csvba”,然后输入要解压的文件名称。最后回车,就会得到一个压缩包。 解压后的 csv文件包含了很多信息,包含了图片、文本和二进制文件。不过在 python中打开压缩包后,会看到一个黑色的文本框,表示该文件已经被解压。如果不想看到这个黑色文本框,可以用“csvba-> print”命令来进行解压。 这个方法同样也有缺陷,就是解压的时候需要选择解压路径。python中有很多第三方库,在这些第三方库中还有专门的解压函数和解压脚本。我们只需要进行选择即可。 这里我们选择使用 python中的 csvba来进行解压,这个库可以将 csv文件解压缩包。但是需要注意的是,我们在使用第三方库进行解压的时候,要先选择解压包才行。 在 python中也有专门的解压包函数 csvba-> extends settings ()来对解压包进行解压。这里我们先使用它来解压缩 csv文件。 如果我们想要将压缩包中的所有文件都解压成一个压缩包,我们可以使用 python中的 pycharm函数来进行解压。 这里我们首先使用 pycharm-> rar来对 csv文件进行解压包选择,然后再使用 pycharm-> extends settings ()来对解压包名进行切换。最后直接在 python中编写代码就行了。 注意在最后解压的时候不要用到命令。
-
三、使用第三方库
如果使用 python自带的第三方库,比如 csvba,会比较麻烦,因为我们需要安装 csvba来读取压缩包的数据。如果我们不安装第三方库,那么在读取压缩包的时候就需要进行两次解压。下面我们以 pycharm为例,来介绍一下如何使用 csvba读取压缩包。 首先,在 pycharm中新建一个工程,在“项目”选项卡中新建一个名为“config”的项目。 在 config中添加如下代码: 然后,在 pycharm的安装目录下创建一个名为“csvba”的工程。 在“install csvba”这个文件夹中新建一个名为“template”的文件夹,其中存放着所有 csv文件的二进制文件,比如: 接下来,我们以“install csvba”这个工程为例,来介绍一下如何读取压缩包的数据: 在 python中的安装目录下找到 pip install csvba这个包。双击这个包并进入编辑界面,在里面添加下面代码: 最后,点击“continue”按钮保存并退出。这样我们就完成了对压缩包的读取。 当然,如果我们使用 python自带的 csvba或者 csvba来读取压缩包的话,就不需要在 python中进行解压了。因为 python已经内置了一个名为 csvba的第三方库,只需要将解压后的压缩包复制粘贴到c:\\ windows\\system32\\ csv\\ bin这个文件夹下即可。 当然,我们也可以直接使用 py库来读取压缩包的数据。
-
四、使用 python读取
将压缩包解压,然后使用 python读取,这样可以实现简单的文件处理。但是这个方法并不适合批量处理 csv文件,因为解压之后会有一些冗余信息,这些信息对我们分析来说并没有什么帮助。所以我们还需要使用 python进行批量读取,实现批量处理。 如果我们使用的是 Python的第三方库 csvba,那么在解压之后就可以直接进行读取了。我们需要注意的是,使用 csvba进行解压时,需要使用 Python自带的第三方库 python读取,而不是在 Python中使用 csvba。使用第三方库也是可以实现批量处理 csv文件的。
-
常用的python csv读取代码如下:
-
1. 使用csv模块读取csv文件
```python
import csv
with open('file.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
```
2. 使用pandas库读取csv文件
```python
import pandas as pd
df = pd.read_csv('file.csv')
print(df)
```
3. 使用numpy库读取csv文件
```python
import numpy as np
data = np.genfromtxt('file.csv', delimiter=',')
print(data)
```
4. 读取csv文件并打印出所有行的内容:
```python
import csv
with open('file.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
```
5. 读取csv文件并将每行的第一列作为字典的键,第二列作为值:
```python
import csv
data =
with open('file.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
data[row[0]] = row[1]
print(data)
```
6. 读取csv文件并将每行的数据存储为一个列表:
```python
import csv
data = []
with open('file.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
data.append(row)
print(data)
```
7. 读取csv文件并将每行的数据存储为一个字典:
```python
import csv
data = []
with open('file.csv', 'r') as file:
reader = csv.DictReader(file)
for row in reader:
data.append(row)
print(data)
```
python读写操作csv及excle文件
1 import csv 2 3 #读取csv文件内容方法1 4 csv_file = csv.reader(open(‘testdata.csv‘,‘r‘)) 5 next(csv_file, None) #skip the headers 6 for user in csv_file: 7 print(user) 8 9 #读取csv文件内容方法2 10 with open(‘testdata.csv‘, ‘r‘) as csv_file: 11 reader = csv.reader(csv_file) 12 next(csv_file, None) 13 for user in reader: 14 print(user) 15 16 #从字典写入csv文件 17 dic = {‘fengju‘:25, ‘wuxia‘:26} 18 csv_file = open(‘testdata1.csv‘, ‘w‘, newline=‘‘) 19 writer = csv.writer(csv_file) 20 for key in dic: 21 writer.writerow([key, dic[key]]) 22 csv_file.close() #close CSV file 23 24 csv_file1 = csv.reader(open(‘testdata1.csv‘,‘r‘)) 25 for user in csv_file1: 26 print(user)
2、python读写excle文件
需要先用python pip命令安装xlrd , xlwt库~
1 import xlrd, xlwt #xlwt只能写入xls文件 2 3 #读取xlsx文件内容 4 rows = [] #create an empty list to store rows 5 book = xlrd.open_workbook(‘testdata.xlsx‘) #open the Excel spreadsheet as workbook 6 sheet = book.sheet_by_index(0) #get the first sheet 7 for user in range(1, sheet.nrows): #iterate 1 to maxrows 8 rows.append(list(sheet.row_values(user, 0, sheet.ncols))) #iterate through the sheet and get data from rows in list 9 print(rows) 10 11 #写入xls文件 12 rows1 = [[‘Name‘, ‘Age‘],[‘fengju‘, ‘26‘],[‘wuxia‘, ‘25‘]] 13 book1 = xlwt.Workbook() #create new book1 excle 14 sheet1 = book1.add_sheet(‘user‘) #create new sheet 15 for i in range(0, 3): 16 for j in range(0, len(rows1[i])): 17 sheet1.write(i, j, rows1[i][j]) 18 book1.save(‘testdata1.xls‘) #sava as testdata1.xls