我一个文件夹下有多个子文件夹,每个子文件夹下又有多个子文件夹,每个最后一级子文件夹下有多个csv文件。现在我想统计所有的csv文件的行数之和
时间: 2023-08-06 10:08:36 浏览: 45
您可以使用 Python 的 os 和 pandas 库来实现这个功能。以下是一个示例代码:
```python
import os
import pandas as pd
# 设置文件夹路径
folder_path = "/path/to/folder"
# 初始化计数器
total_rows = 0
# 遍历所有文件夹和文件
for root, dirs, files in os.walk(folder_path):
for file in files:
# 如果文件是 CSV 文件
if file.endswith(".csv"):
# 读取 CSV 文件,并获取行数
df = pd.read_csv(os.path.join(root, file))
rows = df.shape[0]
# 将行数加到计数器中
total_rows += rows
# 输出结果
print("总行数为:", total_rows)
```
请将 `/path/to/folder` 替换为您的文件夹路径。这个代码会遍历所有的子文件夹和 CSV 文件,并使用 pandas 库读取 CSV 文件,然后统计行数并加到计数器中,最后输出总行数。
相关问题
我一个文件夹下有多个子文件夹,每个子文件夹下又有多个子子文件夹,每个最后一级子文件夹下有多个csv文件。现在我想统计所有的csv文件的行数之和
您使用 Python 的 os 和 pandas 库来实现这个功能。以下是一个示例代码:
```python
import os
import pandas as pd
# 设置文件夹路径
folder_path = "/path/to/folder"
# 初始化计数器
total_rows = 0
# 遍历所有文件夹和文件
for root, dirs, files in os.walk(folder_path):
for dir in dirs:
# 如果子文件夹还有子子文件夹
for sub_root, sub_dirs, sub_files in os.walk(os.path.join(root, dir)):
for file in sub_files:
# 如果文件是 CSV 文件
if file.endswith(".csv"):
# 读取 CSV 文件,并获取行数
df = pd.read_csv(os.path.join(sub_root, file))
rows = df.shape[0]
# 将行数加到计数器中
total_rows += rows
# 输出结果
print("总行数为:", total_rows)
```
请将 `/path/to/folder` 替换为您的文件夹路径。这个代码会遍历所有的子文件夹和 CSV 文件,并使用 pandas 库读取 CSV 文件,然后统计行数并加到计数器中,最后输出总行数。这个代码会递归遍历所有的子子文件夹,以确保找到所有的 CSV 文件。
python代码用来将文件夹下每一个子文件夹里的pdf文件合并成一个pdf,一个子文件夹对应一个pdf
可以使用Python的第三方库PyPDF2来合并PDF文件,并使用os库遍历目录中的文件夹和文件。以下是一个示例代码,它将目录下的每个子文件夹中的所有PDF文件合并为一个PDF文件,然后将结果保存到子文件夹中的一个新PDF文件中。
``` python
import os
from PyPDF2 import PdfFileMerger, PdfFileReader
# 获取当前目录
dir_path = os.getcwd()
# 遍历每个子目录
for root, dirs, files in os.walk(dir_path):
# 获取子目录路径
for dir_name in dirs:
# 创建一个PDF文件合并器对象
merger = PdfFileMerger()
# 遍历当前子目录中的所有PDF文件
for file_name in os.listdir(os.path.join(root, dir_name)):
if file_name.endswith(".pdf"):
# 打开当前PDF文件并将其添加到合并器中
with open(os.path.join(root, dir_name, file_name), 'rb') as pdf_file:
pdf_reader = PdfFileReader(pdf_file)
merger.append(pdf_reader)
# 保存合并后的PDF文件
output_path = os.path.join(root, dir_name + ".pdf")
with open(output_path, 'wb') as output_file:
merger.write(output_file)
```
请注意,此代码假定目录中只包含PDF文件。如果目录中包含其他类型的文件,则需要添加适当的文件类型检查。此外,如果子文件夹中没有PDF文件,则不会创建新的PDF文件。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)