一,csv文件
csv文件是什么?csv文件是一个文件类型。这种文件不像excel,word,ppt……这些文件一样,它们的区别就在于,如果你用MacOs(Mac OperationSystem)打开他的话,他就会变。
Microsoft Operation System(微软) | Mac Operation System(苹果操作系统) | |
---|---|---|
1 | PowerPoint | Keynote/Pdf |
2 | Word | Pages/Pdf |
3 | Excel | Numbers/Apple Graphics/Pdf |
但是,csv文件是永远不会变的,他是一个文档,基本以类似表格的形式呈现。
二,两种路径,条条大路通罗马。
一般我们会用两种方法打开一个并读取一个文件(其实常用的还有一种)。
- Python——这是最原始的语言
- numpy(numberPython)——这是在Python的基础上出来的一个package(模块)
- pandas——这是在numpy的基础上出来的。
来分析一下他们的优缺点:
- 这个原始语言太繁琐了
- 这个有时候是另外的C语言用,不是Python,而且不擅长处理文字
- 这个就是比较完美的,但只非常擅长分析列表分析列表
好,文章这里就只说第一种方法,和第三种方法了。
三,用纯Python语言实现
先看我们的最最亲爱的代码。
csvFile=open('C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv',encoding='utf-8')lines=csvFile.readlines()nlist=[]for i in range(1,len(lines)): s=lines[i] s=s.replace('\n','') n=s.split(',') nlist.append(n)csvFile.close()nlist
对,就这么点。
(代码分析 )
第一行是打开一个文件,括号里放的是文件位置。后边”encoding=utf-8″是他的格式,是兼容中文的格式,所以最好要改一下。有人问,为什么前面要加一个变量,然后把他赋值到里头呢?因为这样子其实让下面的代码更好写,到下面就知道了。第二行是什么意思?就是把他一行一行的打出来(就是阅读),因为我们这是一个二维列表,所以我们要用列表嵌套列表。
我们看大图中是一个二维列表,蓝色的十一行的列表名称,再把这么多列表放到a这个列表里面去然后我们再把这个列表打印出来。下面其实就非常简单了,我们用一个循环让计算机重复这件事情800遍(中间6,7行代码是美化效果)用的。
得出来的结果其实很丑,上面那个是pandas搞出来的。
实际上是长成这个样子。丑吧?
###———————————————首先你得有一个文件———————————————-###
四,用另一种方法——pandas
import pandas as pddataFrame=pd.read_csv('C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv',encoding='utf-8')dataFrame
就这么多,开心吧,可做出来的效果却很好呢。
好了,两种方法都说了。
代码
csvFile=open('C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv',encoding='utf-8')lines=csvFile.readlines()nlist=[]for i in range(1,len(lines)): s=lines[i] s=s.replace('\n','') n=s.split(',') nlist.append(n)csvFile.close()nlist
csvFile=open(‘C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv’,encoding=’utf-8′)
lines=csvFile.readlines()
nlist=[]
for i in range(1,len(lines)):
s=lines[i]
s=s.replace(‘\n’,”)
n=s.split(‘,’)
nlist.append(n)
csvFile.close()
nlist
import pandas as pddataFrame=pd.read_csv('C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv',encoding='utf-8')dataFrame
import pandas as pd
dataFrame=pd.read_csv(‘C:/Users/HJ/Documents/Tencent Files/1968159343/FileRecv/Pokemon.csv’,encoding=’utf-8′)
dataFrame
我们下一期文章见!