Python的文本处理是经常碰到的一个问题,Python的文本文件的内容读取中,有三类方法:read()、readline()、readlines(),这三种方法各有利弊
读写csv文件
逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列
二、将excel文件存为csv文件
CSV格式(Comma-Separated Values,逗号分隔值)是一种通用的,相对简单的文件格式,可应用在程序之间转移表格数据。由此看来,csv格式文件的应用还是很广大的。
所以,看看怎么转化吧 ~~~
此处的转换方式为: 优秀 --> 90,良好 --> 80, (不)合格 --> 60
# -*- coding:utf-8
2 ‘‘‘
3 This is a programe that can change excel into csv.
4 @author:将暮未暮
5 ‘‘‘
6 import pandas as pd
7
8 def ExcelToCsv_1(StartName, SheetName, EndName):
9 ‘‘‘
10 函数功能: 将excel格式文件转换为csv格式文件,使用iat方法
11 StartName: excel表格的文件路径
12 SheetNmae: excel表格中的表格名称
13 EndName: csv文件的保存路径
14 ‘‘‘
15 grade = pd.read_excel(StartName, sheet_name=SheetName)
16 for i in range(len(grade.index)):
17 for j in range(1, len(grade.columns)):
18 if grade.iloc[i, j] == ‘优秀‘:
19 grade.iat[i, j] = 90
20 elif grade.iloc[i, j] == ‘良好‘:
21 grade.iat[i, j] = 80
22 elif grade.iloc[i, j] == ‘合格‘:
23 grade.iat[i, j] = 60
24 else:
25 grade.iat[i, j] = 0
26 grade.to_csv(EndName)
27
28
29 def ExcelToCsv_2(StartName, SheetName, EndName):
30 ‘‘‘
31 函数功能: 将excel格式文件转换为csv格式文件,使用replace方法
32 StartName: excel表格的文件路径
33 SheetNmae: excel表格中的表格名称
34 EndName: csv文件的保存路径
35 ‘‘‘
36 grade = pd.read_excel(StartName, sheet_name=SheetName)
37 Grade = grade.replace("优秀", "90")
38 Grade = Grade.replace("良好", "80")
39 Grade = Grade.replace("不合格", "60")
40 Grade = Grade.replace("合格", "60")
41 Grade = Grade.fillna(value = 0)
42 Grade.to_csv(EndName)
43
44 ExcelToCsv_2("D:\\Python_1.xlsx", "Sheet1", "D:\\Python_1.csv")
45 ExcelToCsv_1("D:\\Python_2.xlsx", "Sheet1", "D:\\Python_2.csv")
看看转化效果吧:

原文:https://www.cnblogs.com/ysd973/p/10792802.html