Chinaunix
标题:
python读写csv文件的问题
[打印本页]
作者:
maple412
时间:
2015-06-23 21:23
标题:
python读写csv文件的问题
如何实现读写csv文件的某一行数据,另外如何统计csv文件中有多少行和多少列
作者:
bikong0411
时间:
2015-06-24 10:41
fileio搞起啊,结合"str" in line 就好了
作者:
reb00t
时间:
2015-06-24 11:03
@reyleon
是这位大神的菜~
作者:
reyleon
时间:
2015-06-24 11:07
reb00t 发表于 2015-06-24 11:03
@reyleon 是这位大神的菜~
作者:
maple412
时间:
2015-06-24 12:33
回复
2#
bikong0411
具体解释下呢,这个怎么用
。
另外不太理解delimiter=’:’, quoting=csv.QUOTE_NONE 这2个参数是干嘛的
作者:
substr函数
时间:
2015-06-24 15:03
先别急
看看书
学习 学习 这个
open
close
sum
enumerate
for
+
+=
list comprehension
print
书可以很好的解决你的疑问
http://bbs.chinaunix.net/thread-1825165-1-1.html
这就是它的一个很好的价值所在
看看书对你学习Python有很大帮助
搞本学习手册看看吧
作者:
icymirror
时间:
2015-06-25 09:07
回复
1#
maple412
得到csv文件的行列数:
def detect_csv_header(filename):
handler = open(filename, "r")
content = handler.readlines()
handler.close()
return csv.Sniffer().has_header("".join(content))
def get_csv_row_col(filename):
row = 0
has_header = detect_csv_header(filename)
datareader = csv.reader(open(filename), dialect='excel')
for line in datareader:
if datareader.line_num == 1:
col = len(line)
if not has_header:
row = row + 1
else:
row = row + 1
return row, col
复制代码
只要修改下get_csv_row_col,就可以读取指定行了。
作者:
maple412
时间:
2015-06-26 11:18
回复
7#
icymirror
如果想要在某一行或者某一列写数据,该如何操作呢
作者:
icymirror
时间:
2015-06-26 16:41
回复
8#
maple412
那就要一边读原来的文件,一边写到新文件了。
当读到需要修改的地方,把你的内容直接放到新文件里面,然后,继续读原来的文件剩下的部分,写到新文件里面去。
作者:
yestreenstars
时间:
2015-06-26 18:10
本帖最后由 yestreenstars 于 2015-06-26 18:10 编辑
假设分隔符为制表符,可以参考以下代码:
with open('1.txt') as f:
lines = f.readlines()
field = lines[0].split('\t')
print 'row: %d\ncolumn: %d' % (len(field), len(lines))
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2