python讀取Excel,12代碼將Excel內容寫入txt文件

有時候,由於保密原則,需要將一個Excel中,不同的內容給不同的人看。這樣的話,就需要將Excel拆分成多個txt文件。下面將介紹一下,如果將如何使用python拆分Excel。示例如下

python讀取Excel,12代碼將Excel內容寫入txt文件

將每一行的第一列作為文件名,其餘列作為文件內容


軟件環境

  • windows 10(linux或者mac都可以)
  • Python3.6(只要是python3 即可)
  • 使用到的python模塊:openpyxl
  • 無需使用pycharm等專用軟件,只要是文本編輯器即可,本人示例中使用的是nodepad++
  • 開始編程

    • 安裝第三方模塊,openpyxl(dos中執行,使用豆瓣源,否則下載會特別慢),openpyxl是專門用來處理Excel(只能處理xlsx文件)的Python模塊。
    <code>pip install openpyxl -i https://pypi.douban.com/simple/<code>
    • 導入要使用的模塊,
    <code>import openpyxl
    from openpyxl.utils import get_column_letter/<code>
    • 將Excel的工作簿實例化,Excel讀寫的操作對象是Excel的單元格。
    <code>my_excel = openpyxl.load_workbook('名單.xlsx')
    my_sheet = my_excel.get_sheet_by_name('收入表')/<code>
    • 寫入文件
    <code>for i in range(2, my_sheet.max_row + 1):\t\t\t\t\t\t\t#max_row:獲取當前工作簿的最大列,由於python列表是右側開區間,所以需要+1
    filename_sheet = 'A' + str(i) #將第一列作為文件名
    f = open(my_sheet[filename_sheet].value + '.txt', "a") #新建文件
    for j in range(1, my_sheet.max_column + 1): #循環添加內容,max_column:獲取最大行
    title = my_sheet[get_column_letter(j) + str(1)].value #將第一行當做標題,value為獲取單元格值的方法,如:sheet.['A1'].value
    content = my_sheet[get_column_letter(j) + str(i)].value #將其他行作為內容
    f.write(str(title) + ':' + str(content) + '\\n') #寫入文件
    f.close() \t\t\t\t\t\t\t#寫入文件結束後,需要關閉/<code>
    • 最後腳本如下
    python讀取Excel,12代碼將Excel內容寫入txt文件


    執行腳本,將代碼另存為ExcelToFile.py,並與Excel文件放到同一目錄下。打開dos窗口,切換到該目錄下,(也可以直接在文件夾中,按住shift + 右擊,打開powershell)執行python ExcelToFile.py。等待完成即可,

    python讀取Excel,12代碼將Excel內容寫入txt文件

    說明

  • 此腳本除去備註內容將只有12行,簡單易學
  • 需要源代碼與示例Excel文件的可以關注發私信“ExcelToFile”,即可獲得源代碼與示例Excel。
  • 如果想學習其他python技能的可以私信或者下方留言。

  • 分享到:


    相關文章: