【python写一段代码完成文件夹内多种类型文件名的读取,输出为一个excel表格】

突发奇想,利用python写一段代码完成文件夹内多种类型文件名的读取,输出为一个excel表格

为了完成这个任务,我们需要做几件事情:

  1. 遍历文件夹并读取所有文件名。
  2. 将文件名和它们各自的文件类型(扩展名)存储在一个列表中。
  3. 使用pandas库将列表转换为DataFrame。
  4. 将DataFrame保存到Excel文件中。

首先,确保你已经安装了pandasopenpyxl(用于将DataFrame保存为Excel文件):

pip install pandas openpyxl

接下来是Python代码:

import os
import pandas as pd

def get_files_in_directory(directory):
    files = []
    for root, dirs, filenames in os.walk(directory):
        for filename in filenames:
            file_path = os.path.join(root, filename)
            file_extension = os.path.splitext(filename)[1][1:].lower()  # 获取扩展名并转换为小写
            files.append((file_path, file_extension))
    return files

def save_to_excel(data, output_file):
    df = pd.DataFrame(data, columns=["File Path", "File Extension"])
    df.to_excel(output_file, index=False, engine='openpyxl')

# 设置文件夹路径和输出Excel文件路径
directory_path = "path_to_your_directory"  # 替换为你的文件夹路径
output_excel_path = "output.xlsx"  # 输出Excel文件的路径和名称

# 获取文件夹内的文件及其扩展名
files_with_extensions = get_files_in_directory(directory_path)

# 保存到Excel文件
save_to_excel(files_with_extensions, output_excel_path)

print(f"文件已保存到 {output_excel_path}")

将上述代码中的path_to_your_directory替换为你要读取文件名的文件夹的实际路径。运行代码后,它会在你指定的文件夹中遍历所有文件,并将文件名和扩展名保存到Excel文件中。

在Python中,你可以使用内置的open()函数来打开文件,并使用文件的readlines()方法来读取文件中的所有行。以下是一个简单的示例:

# 替换为你的文件路径
file_path = "path_to_your_file.txt"

# 使用 'r' 参数打开文件以进行读取
with open(file_path, 'r') as file:
    # 读取文件中的所有行,并存储到列表中
    lines = file.readlines()

# 打印读取到的所有行
for line in lines:
    print(line, end='')  # end='' 用于避免在每行末尾打印额外的换行符

在这个示例中,open()函数用于打开文件,with语句用于确保文件在操作完成后正确关闭。readlines()方法读取文件中的所有行,并将它们作为字符串列表返回。每个字符串代表文件中的一行。

注意,readlines()方法会读取整个文件到内存中,因此如果你的文件非常大,这可能会消耗大量内存。对于大文件,你可能希望逐行读取文件,以避免内存问题。这可以通过在with块内使用循环和file.readline()方法来实现:

# 替换为你的文件路径
file_path = "path_to_your_large_file.txt"

# 使用 'r' 参数打开文件以进行读取
with open(file_path, 'r') as file:
    # 逐行读取文件并打印
    for line in file:
        print(line, end='')  # end='' 用于避免在每行末尾打印额外的换行符

在这个示例中,我们直接在for循环中使用文件对象file,它会逐行迭代文件的内容,而不需要一次性读取整个文件。这对于处理大文件来说更为高效。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值