博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文件的学习
阅读量:5339 次
发布时间:2019-06-15

本文共 4209 字,大约阅读时间需要 14 分钟。

一、文件的相关操作

  1.打开文件 例如:  f = open("F:\\text.txt", 'r') 只读模式,不可写入

 

  

  2.读取文件 例如: f.readlines 读取一行

 

  3.写入 f.write("日日有见才")

4.关闭文件

变量名.close()

Python 3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license()" for more information.>>> f  = open("F:\\text.txt", 'r')>>> for i in f.readlines():    print(i)五日山西卫视第五位懂球帝们千万第五期买得起>>> f.close()>>> f = open("F:\\text.txt", 'a+')>>> f.write("哈哈哈哈")>>> f.seek(0)>>> f.read()'五日山西卫视第五位懂球帝们千万第五期买得起哈哈哈哈' >>> f.close() >>>

二、将excel文件存为csv文件

  使用函数:pandas.read_exceliosheet_name = 0header = 0names = Noneindex_col = Noneparse_cols = Noneusecols = Nonesqueeze = Falsedtype = Noneengine = Noneconverter = Nonetrue_values = Nonefalse_values = Noneskiprows = Nonenrows = Nonena_values = Nonekeep_default_na = Trueverbose = Falseparse_dates = Falsedate_parser =无千位=无comment = Noneskip_footer = 0skipfooter = 0convert_float = Truemangle_dupe_cols = True** kwds 将Excel文件读入pandas DataFrame。

  1.CSV简介: CSV格式(Comma-Separated Values,逗号分隔值)是一种通用的,相对简单的文件格式,可应用在程序之间转移表格数据。由此看来,csv格式文件的应用还是很广大的。

  2.io : 路径

  3.sheet_name : str,int,list或None,默认值为0  (就是哪个表单)

字符串用于表单名称。整数用于零索引表单位置。字符串/整数列表用于请求多个工作表。指定“无”以获取所有工作表。

  4.to_excel将DataFrame写入Excel文件。

  to_csv将DataFrame写入逗号分隔值(csv)文件。

  将逗号分隔值(csv)文件读入DataFrame。

  将固定宽度格式化的行表读入DataFrame。

# -*- coding:utf-8import pandas as pddef ExcelToCsv_1(StartName, SheetName, EndName):    '''    函数功能: 将excel格式文件转换为csv格式文件,使用iat方法    StartName: excel表格的文件路径    SheetNmae: excel表格中的表格名称    EndName:   csv文件的保存路径    '''    grade = pd.read_excel(StartName, sheet_name=SheetName) #从IO路径读取sheet表单    for i in range(len(grade.index)):        #行        for j in range(1, len(grade.columns)): # 列            if grade.iloc[i, j] == '优秀':                            grade.iat[i, j] = 90            elif grade.iloc[i, j] == '良好':                grade.iat[i, j] = 80            elif grade.iloc[i, j] == '合格':                grade.iat[i, j] = 60            else:                grade.iat[i, j] = 0     #空格换成0    grade.to_csv(EndName)       #CSV '''def ExcelToCsv_2(StartName, SheetName, EndName):        函数功能: 将excel格式文件转换为csv格式文件,使用replace方法    StartName: excel表格的文件路径    SheetNmae: excel表格中的表格名称    EndName:   csv文件的保存路径    缺点: 无法将空值替换为0        grade = pd.read_excel(StartName, sheet_name=SheetName)    Grade = grade.replace("优秀", "90")    Grade = Grade.replace("良好", "80")    Grade = Grade.replace("不合格", "60")    Grade = Grade.replace("合格", "60")    Grade = Grade.replace("NaN", "0")    Grade.to_csv(EndName)'''ExcelToCsv_1("D:\\Python_1.xlsx", "Sheet1", "D:\\Python_1.csv")#ExcelToCsv_2("D:\\Python_2.xlsx", "Sheet1", "D:\\Python_2.csv")

效果

 

 

 

 

 

 

三、CSV格式文件转换成html

先看一下HTML中表格的代码

 

#返回一行代码def One_line_of_code(str,thNum):    text = ''    for i in range(thNum):        if len(str[i+1]) == 0:  #如果是空,即长度为0            str[i+1]=0            print(str[i+1])        tem = '{}'.format(str[i+1])        text +=tem    text+=''    return textdef creat_HTML(io,IO,thNum):    hF = open(IO, 'w') #创建一个HTML文件    #写入代码    HTML1 = '''\n\n\n

Python成绩表

\n''' HTML2 = "
\n\n" hF.write(HTML1) hF.write(csv_to_HTML(io,thNum)) hF.write(HTML2) hF.close()def csv_to_HTML(io,thNum): csv = open(io,'r',encoding="utf-8") ls = [] #读取CSV里面的内容并且以逗号为分隔转换为ls列表 for line in csv: line = line.replace('\n', '') ls.append(line.split(',')) k='' for i in range(1,thNum+1): k+=('{} \n'.format(ls[0][i])) K='' for i in range(1,len(ls)): K+=One_line_of_code(ls[i],thNum) return (k+K)if __name__ =='__main__': creat_HTML("D:\\Python_2.csv", "D:\\Python_2.html", 5)

四、CSV转json

import jsonfr = open("D://Python_2.csv", "r", encoding='utf-8')   #转换为UTF-8,否则出现编码gbk编码错误ls =[]for line in fr:    line = line.replace("\n", "") #去除换行    ls.append(line.split(','))   #去除空格fr.close() #把CSV里面的内容读取到列表里,并且关闭文件fw = open("D://Python_json.json", "w") #创建一个新文件,模式为覆盖写for i in range(1,len(ls)):    ls[i] = dict(zip(ls[0], ls[i]))  #zip为内置函数,能够将两个长度相同的 列表组 合成一个关系对 json.dump(ls[1:],fw, sort_keys=True, indent=4, ensure_ascii=False)  ensure...==False 保种可以输出中文fw.close()

效果图

 

转载于:https://www.cnblogs.com/alinger/p/10932079.html

你可能感兴趣的文章
win8.1安装Python提示缺失api-ms-win-crt-runtime-l1-1-0.dll问题
查看>>
图片点击轮播(三)-----2017-04-05
查看>>
判断两个字符串是否相等【JAVA】
查看>>
直播技术细节3
查看>>
《分布式服务架构:原理、设计于实战》总结
查看>>
java中new一个对象和对象=null有什么区别
查看>>
字母和数字键的键码值(keyCode)
查看>>
IE8调用window.open导出EXCEL文件题目
查看>>
Spring mvc初学
查看>>
有意思的代码片段
查看>>
C8051开发环境
查看>>
VTKMY 3.3 VS 2010 Configuration 配置
查看>>
01_1_准备ibatis环境
查看>>
windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决
查看>>
JavaScript中的BOM和DOM
查看>>
360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
查看>>
spring注入Properties
查看>>
【BZOJ-2295】我爱你啊 暴力
查看>>
【BZOJ-1055】玩具取名 区间DP
查看>>
Bit Twiddling Hacks
查看>>