Python 3.x读写csv文件中数字的方法示例


Posted in Python onAugust 29, 2017

前言

本文主要给大家介绍了关于Python3.x读写csv文件中数字的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

读写csv文件

读文件时先产生str的列表,把最后的换行符删掉;然后一个个str转换成int

## 读写csv文件
csv_file = 'datas.csv'
csv = open(csv_file,'w')
for i in range(1,20):
 csv.write(str(i) + ',')
 if i % 10 == 0:
  csv.write('\n')
csv.close()
result = []
with open(csv_file,'r') as f:
 for line in f:
  linelist = line.split(',')
  linelist.pop()# delete: \n
  for index, item in enumerate(linelist):
   result.append(int(item))
print('\nResult is \n' , result)

输出:

Result is
 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

检查目录是否存在

若目标目录不存在,则新建一个目录

import os
json_dir = "../dir_json/2017-04/"
if not os.path.exists(json_dir):
 print("json dir not found")
 os.makedirs(json_dir)
 print("Create dir " + json_dir)

写文件时指定格式

参考下面的代码,打开文件时指定utf8,转换成json时指定ensure_ascii=False

import json
json_file = open(json_dir + id + '.json', 'w', encoding='utf8')
json_file.write(json.dumps(data_dict, ensure_ascii=False))

避免写成的json文件乱码

函数 enumerate(iterable, start=0)

返回一个enumerate对象。iterable必须是一个句子,迭代器或者支持迭代的对象。

enumerate示例1:

>>> data = [1,2,3]
>>> for i, item in enumerate(data):
 print(i,item)
0 1
1 2
2 3

示例2:

>>> line = 'one'
>>> for i, item in enumerate(line,4):
 print(i,item)
4 o
5 n
6 e

参考: https://docs.python.org/3/library/functions.html?highlight=enumerate#enumerate

class int(x=0)

class int(x, base=10)

返回一个Integer对象。对于浮点数,会截取成整数。

>>> print(int('-100'),int('0'),int('3'))
-100 0 3
>>> int(7788)
7788
>>> int(7.98)
7
>>> int('2.33')
Traceback (most recent call last):
 File "<pyshell#27>", line 1, in <module>
 int('2.33')
ValueError: invalid literal for int() with base 10: '2.33'

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
phpsir 开发 一个检测百度关键字网站排名的python 程序
Sep 17 Python
Python 创建子进程模块subprocess详解
Apr 08 Python
matplotlib简介,安装和简单实例代码
Dec 26 Python
python训练数据时打乱训练数据与标签的两种方法小结
Nov 08 Python
Python实战购物车项目的实现参考
Feb 20 Python
深入浅析python 协程与go协程的区别
May 09 Python
pycharm new project变成灰色的解决方法
Jun 27 Python
Python实用工具FuckIt.py介绍
Jul 02 Python
django基础学习之send_mail功能
Aug 07 Python
python如何建立全零数组
Jul 19 Python
浅谈Selenium 控制浏览器的常用方法
Dec 04 Python
如何用Python提取10000份log中的产品信息
Jan 14 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 #Python
Python网络爬虫与信息提取(实例讲解)
Aug 29 #Python
Python开发的HTTP库requests详解
Aug 29 #Python
Python实现按学生年龄排序的实际问题详解
Aug 29 #Python
详解Python进程间通信之命名管道
Aug 28 #Python
基于Python闭包及其作用域详解
Aug 28 #Python
利用Python查看目录中的文件示例详解
Aug 28 #Python
You might like
实现dedecms全站URL静态化改造的代码
2007/03/29 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
jQuery编写widget的一些技巧分享
2010/10/28 Javascript
jquery checkbox实现单选小例
2013/11/27 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
2013/12/30 Javascript
深入理解javascript原型链和继承
2014/09/23 Javascript
Bootstrap实现响应式导航栏效果
2015/12/28 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
对VUE中的对象添加属性
2018/09/18 Javascript
基于Express框架使用POST传递Form数据
2019/08/10 Javascript
微信小程序scroll-view的滚动条设置实现
2020/03/02 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
Vue实现购物车基本功能
2020/11/08 Javascript
vant时间控件使用方法详解
2020/12/24 Javascript
[00:34]DOTA2上海特级锦标赛 Spirit战队宣传片
2016/03/04 DOTA
状态机的概念和在Python下使用状态机的教程
2015/04/11 Python
简单介绍Python的Tornado框架中的协程异步实现原理
2015/04/23 Python
python连接MySQL数据库实例分析
2015/05/12 Python
python3写爬取B站视频弹幕功能
2017/12/22 Python
Python Django框架实现应用添加logging日志操作示例
2019/05/17 Python
使用Tensorflow实现可视化中间层和卷积层
2020/01/24 Python
jupyter notebook的安装与使用详解
2020/05/18 Python
麦德龙官方海外旗舰店:德国麦德龙超市
2017/12/23 全球购物
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
Viking比利时:购买办公用品
2019/10/30 全球购物
意大利在线药房:Saninforma
2021/02/11 全球购物
程序员机试试题汇总
2012/03/07 面试题
年度考核自我评价
2014/01/25 职场文书
仓库组长岗位职责
2014/01/29 职场文书
学校运动会广播稿
2014/10/11 职场文书
护林员个人总结
2015/03/04 职场文书
医务人员医德医风心得体会
2016/01/25 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
JS实现简单九宫格抽奖
2022/06/28 Javascript