您当前的位置:首页 > 电脑办公 > excel
| PPT | 电脑打字 | 计算机基础 | word | excel | Linux教程 |

自学教程:python批量删除所有csv文件的第一行内容

51自学网 2021-11-23 17:27:33
  excel
这篇教程python批量删除所有csv文件的第一行内容写得很实用,希望能帮到您。

用Python快速删除n个Excel表格中的第一行数据和遇到的错误解决方法

博主今天在处理文件时遇到了一个简单又繁琐的事情:

一共有48个csv文件,每个文件的第一行是标题行。要求删除所有csv文件的第一行内容,剩余内容不变。

文件名类似:

在这里插入图片描述

文件内容中首行都有一样的标题

在这里插入图片描述

在网上找的代码为

  with open(r'C:\Users\sheet1.csv', 'r') as f,open(r'C:\2\sheet1.csv', 'w') as f1:
        next(f)  # skip header line
        for line in f:
            f1.write(line)

路径部分为文件的绝对路径。

因为有48个csv文件需要修改,因此需要写一个for循环。

for i in range(1,49):
	with open(r'C:\Users\sheet%d.csv'%i, 'r') as f,open(r'C:\2\sheet%d.csv'%i, 'w') as f1:
        next(f)  # skip header line
        for line in f:
            f1.write(line)

此时我们运行一下代码,出现了Unicode解码错误:

UnicodeDecodeError: 'gbk' codec can't decode byte 0xaa in position 10: illegal multibyte sequence

 

解决方法:

for i in range(1,49):
    with open(r'C:\Users\csv\sheet%d.csv'%i, 'r', encoding="utf-8") as f, open(
            r'C:\Users\csv\2\sheet%d.csv'%i, 'w', encoding="utf-8") as f1:
        next(f)  # skip header line
        for line in f:
            f1.write(line)

使用open函数时,加上参数encoding=定义为“utf-8”即可。


df.drop()函数删除多行或者多列
pandas.read_excel()参数详解
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。