python每小时生成一个csv文件
时间: 2024-03-01 09:29:13 浏览: 212
discord-rp-novelizer:一个Python程序,用于获取从rp服务器生成的文本文件并进行组织
你可以使用 Python 的标准库 `csv` 和 `datetime`,以及操作系统模块 `os`,来实现每小时生成一个 CSV 文件的功能。具体实现步骤如下:
1. 导入所需模块:
```python
import csv
import datetime
import os
```
2. 设置 CSV 文件路径和文件名:
```python
csv_dir = './csv_files' # CSV 文件目录
if not os.path.exists(csv_dir): # 如果目录不存在则创建
os.makedirs(csv_dir)
filename = datetime.datetime.now().strftime('%Y-%m-%d-%H.csv') # 文件名为当前时间的小时数
csv_path = os.path.join(csv_dir, filename) # CSV 文件路径
```
3. 写入 CSV 文件内容:
```python
with open(csv_path, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(['Col1', 'Col2', 'Col3']) # 写入表头
writer.writerow(['Value1', 'Value2', 'Value3']) # 写入数据
```
4. 把上述代码封装成一个函数:
```python
def generate_csv():
csv_dir = './csv_files'
if not os.path.exists(csv_dir):
os.makedirs(csv_dir)
filename = datetime.datetime.now().strftime('%Y-%m-%d-%H.csv')
csv_path = os.path.join(csv_dir, filename)
with open(csv_path, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(['Col1', 'Col2', 'Col3'])
writer.writerow(['Value1', 'Value2', 'Value3'])
```
5. 使用 `time` 模块的 `sleep` 函数来控制每小时生成一次 CSV 文件:
```python
import time
while True:
generate_csv()
time.sleep(3600) # 3600 秒为一小时
```
上述代码会一直循环运行,每隔一小时生成一个 CSV 文件。你可以根据需要修改文件目录、文件名、表头、数据,以及生成 CSV 文件的时间间隔。
阅读全文