Python实现批量上传excel

举报
赵KK日常技术记录 发表于 2023/06/24 22:10:43 2023/06/24
【摘要】 以下是Python实现批量上传Excel的代码示例:import osimport pandas as pd# 设置上传文件夹路径upload_path = 'upload_files'# 获取上传文件夹中的所有文件名files = os.listdir(upload_path)# 遍历上传文件夹中的所有文件for file_name in files: # 读取Excel文件数据 ...

以下是Python实现批量上传Excel的代码示例:

import os
import pandas as pd

# 设置上传文件夹路径
upload_path = 'upload_files'

# 获取上传文件夹中的所有文件名
files = os.listdir(upload_path)

# 遍历上传文件夹中的所有文件
for file_name in files:
    # 读取Excel文件数据
    file_path = os.path.join(upload_path, file_name)
    df = pd.read_excel(file_path)

    # TODO: 在这里做数据处理和操作

    # 输出处理结果到控制台
    print(f'{file_name} 共有 {len(df)} 条数据,处理后数据为:')
    print(df.head())

    # TODO: 在这里做数据保存和上传操作

在上述代码中,我们首先通过 os.listdir() 方法获取了指定文件夹中的所有文件名,然后遍历每个文件,读取其数据并进行处理,最后输出处理结果到控制台。需要注意的是,由于不同的Excel文件可能具有不同的数据结构,因此在进行数据处理时需要根据实际情况进行调整。此外,我们还需要在代码中添加数据保存和上传的操作,具体实现方式视具体情况而定。

实现批量上传 Excel 的多线程版本代码示例:

import os
import pandas as pd
from concurrent.futures import ThreadPoolExecutor

# 设置上传文件夹路径
upload_path = 'upload_files'

# 定义处理单个文件的函数
def process_file(file_name):
    # 读取Excel文件数据
    file_path = os.path.join(upload_path, file_name)
    df = pd.read_excel(file_path)

    # TODO: 在这里做数据处理和操作

    # 输出处理结果到控制台
    print(f'{file_name} 共有 {len(df)} 条数据,处理后数据为:')
    print(df.head())

    # TODO: 在这里做数据保存和上传操作

# 获取上传文件夹中的所有文件名
files = os.listdir(upload_path)

# 创建线程池并提交任务
with ThreadPoolExecutor() as executor:
    for file_name in files:
        executor.submit(process_file, file_name)

在上述代码中,我们使用了 ThreadPoolExecutor 类来创建一个线程池,然后使用 submit() 方法将每个文件的处理任务提交到线程池中。这样可以让程序同时处理多个文件,提高程序的效率。需要注意的是,由于多线程并发执行,因此在进行数据处理和操作时需要注意线程安全性,避免出现数据竞争和冲突等问题。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。