温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python读写csv数据的案例

发布时间:2021-02-18 12:59:07 来源:亿速云 阅读:155 作者:小新 栏目:开发技术

小编给大家分享一下python读写csv数据的案例,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

案例:

       通过股票网站,我们获取了中国股市数据集,它以csv数据格式存储

       Data,Open,High,Low,Close,Volume,Adj Close

       2016-06-28,8.63,8.47,8.66,8.70,500000,8.70

       2016-06-28,8.63,8.47,8.66,8.70,500000,8.70

       2016-06-28,8.63,8.47,8.66,8.70,500000,8.70

       ......

       需求:请将2016年成交量超过500000记录存储到另外一个csv文件中

什么是csv类型数据?

       类似表单,第一行数据是字段名字,单独数据以逗号隔开

如何做?

获取股票信息的csv类型数据
以二进制读的形式打开csv类型数据,csv.reader(文件对象)返回一个对象,通过对象操作
以二进制写的形式打开新的csv数据,csv.writerrow(文件对象)返回一个对象,通过对象操作
循环读取csv中数据,通过if判断是否满足需求,满足的写入到新的csv文件中

#!/usr/bin/python3
 
import csv
 
 
def r_w_csv():
 with open('pingan.csv', 'rb') as rf:
  # 打开原文件读取进来,csv.read(rf)方式
  reader = csv.read(rf)
  with open('pingan_copy.csv', 'wb') as wf:
   # 打开另外一个文件,csv.writer(wf)方式,写入csv数据头部
   writer = csv.writer(wf)
   headers = reader.next()
   writer.writerrow(headers)
    
   # 给索引命名,增加可读性
   data, amount = 0, 5
    
   # 写入时间2016年,营业额大于等于50000000的数据
   for row in reader:
    if row[data] < '2016-01-01':
     break
    if int(row[amount]) >= 50000000:
     writer.writerrow(row)
 
if __name__ == '__main__':
 r_w_csv()

看完了这篇文章,相信你对“python读写csv数据的案例”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI