簡體   English   中英

在循環中讀取多個文件並將每個文件的讀取數據寫入 Python 中的另一個文件

[英]Reading from many files in a loop and writing the read data from each file in another file in Python

我正在編寫一個腳本來讀取幾個文件並將信息從它們復制到另一個文件。

我的初始腳本應該從給定目錄中讀取.xlsx文件,復制文件中特定工作表的某個部分並將其粘貼到另一個文件中。 這是我的代碼,它正在工作:

import xlsxwriter
import pandas as pd
import numpy
data=pd.read_excel(r'C:\Users\bvi\Desktop\python 
   script\EMC_review_template_v10.xlsx',sheet_name='Test_Summary',skiprows=5,nrows=44,usecols='A:O')
df = pd.DataFrame(data)

df2=df.to_excel('try.xlsx',sheet())
print(df2)

當我試圖形成一個循環時,問題就開始了:

import xlsxwriter
import pandas as pd
import numpy
import pathlib
import os
path=(r"C:\Users\bvi\Desktop\files")
files = []
###r=root, d=directories, f = files
for root, dirs, files in os.walk(path):
    for filename in files:
        length=len(files)
        for i in range(length):
            print(filename[i])

data = pd.read_excel(r'path\filename[i]',sheet_name='Test_Summary', skiprows=5,nrows=44, 
    usecols='A:O')

df = pd.DataFrame(data)
    df2=df.to_excel(r'C:\Users\bvi\Desktop\result\summary.xlsx',sheet_name='EMC_review1')
print(df2, file)

我正在努力創建一個遍歷目錄中文件的循環。 我想讓文件的讀取成為文件名的函數。

我猜 pb 來自os.walk循環內的雙循環。 嘗試這個:

path=(r"C:\Users\bvi\Desktop\files")
for root, dirs, files in os.walk(path):
    for filename in files:
        print(filename)
        data = pd.read_excel(path+'/'+filename',sheet_name='Test_Summary', 
                             skiprows=5,nrows=44, usecols='A:O')
        df = pd.DataFrame(data)
        df2=df.to_excel(r'C:\Users\bvi\Desktop\result\summary.xlsx',
                        sheet_name=filename)

如果您所有的“文件名”都是唯一的,這會將多個 xlsx 文件中的“Test_summary”表組合成一個多表 xlsx(每個文件一張)。 那是你需要的嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM