【python基础】

您所在的位置:网站首页 python导入txt文件 【python基础】

【python基础】

2023-07-16 19:28| 来源: 网络整理| 查看: 265

一、处理文件

     1、读取txt文件

 

#!/usr/bin/python # python3.6 file = open('E:\\个人文件\\6-desktop\\new.txt','r') for line in file: print(line)

     2、读取docx文件的内容

          1)Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看做对象,对对象进行处理就是对word文档的内容处理。

      

          2)需要注意,python-docx模块安装需要在cmd命令行中输入pip install python-docx,如下图表示安装成功(最后那句英文Successfully installed,成功地安装完成。)

     这里写图片描述

注意在导入模块时,用的是import docx。

     3)代码

 

#读取docx中的文本代码示例 import docx #获取文档对象 file=docx.Document("E:\\个人文件\\6-desktop\\xxxx.docx") print("段落数:"+str(len(file.paragraphs)))#段落数为13,每个回车隔离一段 #输出每一段的内容 for para in file.paragraphs: print(para.text) #输出段落编号及段落内容 for i in range(len(file.paragraphs)): print("第"+str(i)+"段的内容是:"+file.paragraphs[i].text)

       3、处理doc文件

问题:python无法读取.doc文件

解决方案:利用python将大批.doc文件转化为.docx文件,再读写.docx文件

问题分析:python利用python-docx (0.8.6)库可以读取.docx文件或.txt文件,且一路畅通无阻,而对.doc文件本身python是无能为力的,那有很多同学就不服气,我手动把.doc文件的后缀名改为.docx或.txt不就解决问题了吗?答案是不能的,简单修改后缀名,那么文件就被你玩坏了,别说打不开,就是打开也是天书啊(乱码)。python无法操作.doc文件是他的先天不足,但是我们不要钻牛角尖一定要在互联网上找到一种源码直接读取.doc文件,一调用就好了,但是不幸的是,你可能在网上也找不到解决方案。正当我一筹莫展之时,我将.doc文档利用手动的方式“另存为”.docx文档,就能够成功打开转化后的.docx文档,于是我就尝试利用代码方式完成这个手动的“另存为”功能,问题得以解决。

 

代码如下:

import sys import pickle import re import codecs import string import shutil from win32com import client as wc import docx def doSaveAas(): word = wc.Dispatch('Word.Application') doc = word.Documents.Open(u'E:\code\\xxxx.doc') # 目标路径下的文件 doc.SaveAs(u'E:\\code\\hhhhhhhh.docx', 12, False, "", True, "", False, False, False, False) # 转化后路径下的文件 doc.Close() word.Quit() doSaveAas()

  4、读取xlsx文件

 

1) 确保安装好excle的处理包xlrd

安装过程如下:http://blog.csdn.net/weixin_40449300/article/details/79138741

2) 处理代码如下

# -*- coding: utf-8 -*- import xdrlib ,sys import xlrd def open_excel(file= 'file.xls'): try: data = xlrd.open_workbook(file) return data except Exception as e: print(str(e)) #根据索引获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_index:表的索引 def excel_table_byindex(file= 'E:\\个人文件\\6-desktop\\xxxx.xls',colnameindex=0,by_index=0): data = open_excel(file) table = data.sheets()[by_index] nrows = table.nrows #行数 ncols = table.ncols #列数 colnames = table.row_values(colnameindex) #某一行数据 list =[] for rownum in range(1,nrows): row = table.row_values(rownum) if row: app = {} for i in range(len(colnames)): app[colnames[i]] = row[i] list.append(app) return list #根据名称获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_name:Sheet1名称 def excel_table_byname(file= 'E:\\个人文件\\6-desktop\\xxxx.xls',colnameindex=0,by_name=u'电度'): data = open_excel(file) table = data.sheet_by_name(by_name) nrows = table.nrows #行数 colnames = table.row_values(colnameindex) #某一行数据 list =[] for rownum in range(1,nrows): row = table.row_values(rownum) if row: app = {} for i in range(len(colnames)): app[colnames[i]] = row[i] list.append(app) return list def main(): tables = excel_table_byindex() for row in tables: print(row) tables = excel_table_byname() for row in tables: print(row) if __name__=="__main__": main()

 

 

 

 

 

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3