溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python怎么實(shí)現(xiàn)對(duì)doc,txt,xls文檔的讀寫操作

發(fā)布時(shí)間:2022-04-02 09:15:39 來(lái)源:億速云 閱讀:135 作者:iii 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容介紹了“python怎么實(shí)現(xiàn)對(duì)doc,txt,xls文檔的讀寫操作”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

1.python實(shí)現(xiàn)對(duì)doc文檔的讀取

#讀取docx中的文本代碼示例
import docx
#獲取文檔對(duì)象
file=docx.Document("path")
print("段落數(shù):"+str(len(file.paragraphs)))#段落數(shù)為13,每個(gè)回車隔離一段

#輸出每一段的內(nèi)容
for para in file.paragraphs:
    print(para.text)

#輸出段落編號(hào)及段落內(nèi)容
for i in range(len(file.paragraphs)):
    print("第"+str(i)+"段的內(nèi)容是:"+file.paragraphs[i].text)
2.python實(shí)現(xiàn)對(duì)txt文檔的讀取
filename = 'tangqing.txt' # txt文件和當(dāng)前腳本在同一目錄下,所以不用寫具體路徑
pos = []
Efield = []
with open(filename, 'r') as file_to_read:
  while True:
    lines = file_to_read.readline() # 整行讀取數(shù)據(jù)
    if not lines:
      break
    p_tmp= [float(i) for i in lines.split()] # 將整行數(shù)據(jù)分割處理,如果分割符是空格,括號(hào)里就不用傳入?yún)?shù),如果是逗號(hào), 則傳入‘,'字符。
    pos = np.array(p_tmp) # 將數(shù)據(jù)從list類型轉(zhuǎn)換為array類型。
    print(pos)
3.python實(shí)現(xiàn)對(duì)xls表格的讀取
import  xdrlib ,sys
import xlrd
def open_excel(file= 'path'):
    try:
        data = xlrd.open_workbook(file)
        return data
    except Exception as e:
        print(str(e))

#根據(jù)索引獲取Excel表格中的數(shù)據(jù)   參數(shù):file:Excel文件路徑     colnameindex:表頭列名所在行的索引  ,by_index:表的索引
def excel_table_byindex(file= 'path/xxx.xls',colnameindex=0,by_index=0):
    data = open_excel(file)
    table = data.sheets()[by_index]
    nrows = table.nrows #行數(shù)
    ncols = table.ncols #列數(shù)
    colnames =  table.row_values(colnameindex) #某一行數(shù)據(jù) 
    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

#根據(jù)名稱獲取Excel表格中的數(shù)據(jù)   參數(shù):file:Excel文件路徑     colnameindex:表頭列名所在行的所以  ,by_name:Sheet1名稱
def excel_table_byname(file= 'E:\\個(gè)人文件\\6-desktop\\豐沙點(diǎn)表-配電所.xls',colnameindex=0,by_name=u'電度'):
    data = open_excel(file)
    table = data.sheet_by_name(by_name)
    nrows = table.nrows #行數(shù) 
    colnames =  table.row_values(colnameindex) #某一行數(shù)據(jù) 
    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()

“python怎么實(shí)現(xiàn)對(duì)doc,txt,xls文檔的讀寫操作”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI