python之关于csv的文件读写记录

本文介绍了一个简单的CSV文件读写练习系统,包括数据的读取、打印、清空操作,以及用户交互界面,展示了如何使用Python和csv模块进行基本的数据处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相关配置:

Anaconda 4.2.0 (64-bit)
Python 3.5.2

关于csv文件读写练习小系统。

程序如下:

import csv
import time
import sys


filename = 'ha.csv'
datas = [['hello', 'girl'],
         ['hi', 1],
         ['oh', 2],
         ['yeah', 3]]
with open(filename, 'w', newline='') as f:
    w = csv.writer(f)
    for row in datas:
        w.writerow(row)
d = []
for i in range(1):
    with open(filename) as f:
        datas = csv.reader(f)
        for data in datas:
            print(data)
            d.append(data)
            # print(d)
    with open(filename, 'w', newline='') as f:
        w = csv.writer(f)
        for row in d:
            w.writerow(row)
    time.sleep(1)
while True:
    print('如果想清除数据,请输入(y/Y),如果想退出系统,请输入(n/N): ')
    a = input()
    if (a == 'y') or (a == 'Y'):
        d = []
        with open(filename, 'w', newline='') as f:
            w = csv.reader(f)
            for row in d:
                w.writerow(row)
        print('数据已经清空!')
        break
    elif (a == 'n') or (a == 'N'):
        print('数据保留,退出系统成功!')
        sys.exit()
    else:
        print('请按要求输入!')

我曾经跨过山和大海,也穿过人山人海,我曾经拥有着的一切,转眼都飘散如烟,我曾经失落失望失掉所有方向,直到看见平凡才是唯一的答案。
——韩寒《平凡之路》

 

### Python CSV模块读写文件示例教程 #### 1. CSV模块简介 Python的`csv`模块提供了处理CSV(逗号分隔值)文件的功能,能够轻松实现文件的读取和写入操作[^1]。该模块支持多种配置选项,例如自定义分隔符、引号规则等,以适应不同的CSV文件格式。 #### 2. CSV文件读取操作 以下是一个使用`csv.reader`读取CSV文件的示例代码: ```python import csv import sys filename = 'example.csv' try: with open(filename, newline='') as f: reader = csv.reader(f) for row in reader: print(row) except csv.Error as e: sys.exit('file {}, line {}: {}'.format(filename, reader.line_num, e)) ``` 上述代码展示了如何打开一个CSV文件并逐行读取内容[^2]。如果文件中包含错误格式的数据,程序将捕获`csv.Error`异常并输出错误信息。 #### 3. CSV文件写入操作 以下是使用`csv.writer`将数据写入CSV文件的示例代码: ```python import csv def write_csv(): # 打开文件以写入模式 with open('output.csv', 'w', newline='', encoding='utf-8') as fw: writer = csv.writer(fw) # 数据准备 number = range(65, 70) char = list(map(chr, number)) # 写入数据 for i in range(len(char)): writer.writerow([char[i], number[i]]) write_csv() ``` 此代码片段展示了如何创建一个新的CSV文件,并将字符与对应的ASCII码写入其中[^3]。 #### 4. 自定义CSV写入操作 以下是一个更复杂的写入示例,演示如何将多维数据写入CSV文件: ```python import csv # 定义数据 data = [ (1, 2, 3, 4, 5, 6), ('a', 'b', 'c', 'd', 'e', 'f'), ('p', 'y', 't', 'h', 'o', 'n') ] # 写入函数 def save_to_csv(data, filename): with open(filename, 'w', newline='') as file: writer = csv.writer(file) writer.writerows(data) save_to_csv(data, 'custom_data.csv') ``` 这段代码通过`writerows`方法一次性写入多行数据[^4],简化了循环操作。 #### 5. 注意事项 - 在读取或写入CSV文件时,建议始终使用`newline=''`参数打开文件,以避免在不同操作系统上出现换行符问题。 - 如果文件包含非ASCII字符,确保指定正确的编码(如`encoding='utf-8'`)。 - `csv.writer`和`csv.reader`默认使用逗号作为分隔符,但可以通过`delimiter`参数自定义分隔符。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值