python 读写文本文件笔记

来源:互联网 发布:淘宝代运营团队 编辑:程序博客网 时间:2024/05/21 22:45

python 使用 xlrd , docx的使用:


以下一段代码实现读写doc,xls,txt

1.获取文件全路径

my_file_name = QtGui.QFileDialog.getOpenFileName(self, u'打开文件', u'/')

print unicode(my_file_name)

2.如果是doc文件
if my_file_name[-5:] == '.docx' or my_file_name[-4:] == '.doc':
    print u'doc文件'
    import docx

    doc = docx.Document(unicode(my_file_name).replace(u'/', u'\\'))

    for line in doc.paragraphs:

        print line.text

self.textBrowser.append(line.text)

3.如果是excel文件
elif unicode(my_file_name).endswith('.xlsx') or unicode(my_file_name).endswith('.xls'):
    print u'excel'
    from xlrd import open_workbook
    wb = open_workbook(unicode(my_file_name).replace(u'/', u'\\'))
    print wb.sheets()
    for s in wb.sheets():
        print s.nrows
        print s.ncols                
        for row in range(s.nrows):
            for col in range(s.ncols):
                str +='%-10s'%(unicode(s.cell(row, col).value))                     
#              self.textBrowser.append(unicode(''))
                self.textBrowser.append(str)
            print str

4.如果是txt文件

elif  unicode(my_file_name).endswith('.txt'):
    print u'txt文件'
    f = open(unicode(my_file_name))
    my_data = f.read()
    try:
         self.textBrowser.append(my_data.decode('gbk'))
     except:
         QtGui.QMessageBox.warning(self, u'警告', u'该文件不是gbk编码')
     f.close()




原创粉丝点击