精华内容
下载资源
问答
  • 使用python删除excel表格重复。 # 导入pandas包并重命名为pd import pandas as pd # 读取Excel中Sheet1中的数据 data = pd.DataFrame(pd.read_excel('test.xls', 'Sheet1')) # 查看读取数据内容 print(data) # ...
  • 使用python删除excel表格重复。 # 导入pandas包并重命名为pd import pandas as pd # 读取Excel中Sheet1中的数据 data = pd.DataFrame(pd.read_excel('test.xls', 'Sheet1')) # 查看读取数据内容 print(data) # ...
  • 要求删除所有csv文件第一内容,剩余内容不变。 文件名类似: 文件内容首行都有一样标题 在网上找代码为 with open(r'C:\Users\sheet1.csv', 'r') as f,open(r'C:\2\sheet1.csv', 'w') as f1: next(f) ...

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

    一共有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”即可。

    展开全文
  • 1. 前言 由于近期有任务需要,要写一个能够处理Excel脚本,实现功能是,在A...在查找过程发现,网上流传了一些使用openpyxl进行插入删除行的操作,现整理一下。 2. 使用openpyxl 一种思路是将sheet数据转换成li
  • python 使用 openpyxl 修改表格中的内容

    千次阅读 2020-08-25 11:29:38
    python 使用 openpyxl 修改表格中的内容 1、向某个格子中写入内容并保存2、向表格中插入数据 .append()3、在 python 中使用 excel 函数公式4、插入空行和空列 .insert_cols()和.insert_rows()5、删除行和列 ....

    注意:通过脚本对表格进行操作的时候,不要用其他软件打开表格,否则可能会造成脚本运行失败

    1、向某个格子中写入内容并保存

    方式一:相当于直接修改源文件中的单元格

    from openpyxl import load_workbook
    
    
    workbook = load_workbook(filename='../excelDemo/testCase.xlsx')
    
    sheet = workbook.active
    print(sheet)
    
    # 方式一:相当于直接修改源文件
    
    sheet["C2"] = "无效"
    workbook.save(filename='../excelDemo/testCase.xlsx')
    

    方式二:修改单元格内容后另存文件

    from openpyxl import load_workbook
    
    workbook = load_workbook(filename='../excelDemo/testCase.xlsx')
    
    sheet = workbook.active
    print(sheet)
    
    
    # 方式二:将“C4”单元格的数据改为了“失效”,并另存为了“test.xlsx”文件(路径为当前py程序下)
    cell = sheet["C4"]
    cell.value = "失效"
    workbook.save(filename = "test.xlsx")
    

    2、向表格中插入行数据 .append()

    .append()方式:会在表格已有的数据后面,增添这些数(按行插入);
    这个操作很有用,爬虫得到的数据,可以使用该方式保存成 Excel 文件;

    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./test1.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    
    data = [
    ["机审规则","不同用户类型跑不同publine","主"],
    ["机审规则","不同用户类型跑不同publine","低"],
    ["机审规则","不同用户类型跑不同publine","中"],
    ["机审规则","不同用户类型跑不同publine","中"],
    ]
    for row in data:
    	sheet.append(row)
    	# print(row)
    
    workbook.save(filename='./test2.xlsx')
    

    在这里插入图片描述

    3、在 python 中使用 excel 函数公式

    python 究竟支持写哪些“excel 函数公式”呢?我们可以使用如下操作查看一下

    from openpyxl import load_workbook
    
    from openpyxl.utils import FORMULAE
    
    print(FORMULAE)
    

    计算平均值
    在这里插入图片描述

    在这里插入图片描述

    from openpyxl import load_workbook
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    sheet["k1"] = "平均消费"
    for i in range(2,5):
    	sheet[f"k{i}"] = f'=AVERAGE(B{i}:J{i})'
    
    
    workbook.save(filename='./cash.xlsx')
    

    4、插入空行和空列 .insert_cols()和.insert_rows()

     .insert_cols(idx=数字编号, amount=要插入的列数),插入的位置是在 idx 列数的左
    侧插入;
     .insert_rows(idx=数字编号, amount=要插入的行数),插入的行数是在 idx 行数的下
    方插入;
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    sheet.insert_cols(idx=2,amount=1)
    # 在第二列插入一列空列
    
    sheet.insert_rows(idx=3,amount=2)
    # 在第三行插入两行空行
    
    workbook.save(filename='./cash.xlsx')
    

    效果如下,在第二列插入一列空列,在第三行插入两行空行。
    在这里插入图片描述
    注意:

    • 通过函数对表格进行操作时,表格不能用其他软件进行打开,否则该脚本会运行失败
    • 插入空行和空列,会对之前的使用 excel 函数公式产生影响,例如饮料喝肉类两行的平均消费的值就发生了改变,因为计算平均值的时候,是根据所限定范围内的单元格进行操作的,插入空行和空列后,指定的单元格的内容已经发生了改变

    5、删除行和列 .delete_rows()和.delete_cols()

     .delete_rows(idx=数字编号, amount=要删除的行数)
     .delete_cols(idx=数字编号, amount=要删除的列数)
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    sheet.delete_cols(idx=2,amount=1)
    # 删除第二列
    
    sheet.delete_rows(idx=3,amount=2)
    # 从第三行开始删除两行
    
    workbook.save(filename='./cash.xlsx')
    

    效果如下,删除第二列,从第三行开始删除两行,表格又回复原样了
    在这里插入图片描述

    6、移动格子 .move_range()

     .move_range("数据区域",rows=,cols=):正整数为向下或向右、负整数为向左或向上
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    sheet.move_range("D2:G5",rows=2,cols=1)
    # 将"D2:G5"这块区域向下平移2行,向右平移一列
    
    workbook.save(filename='./cash.xlsx')
    

    效果如下
    在这里插入图片描述

    7、创建新的 sheet 表格 .create_sheet()

     .create_sheet("新的 sheet 名"):创建一个新的 sheet 表
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    
    
    workbook.create_sheet("newSheet")
    print(workbook.sheetnames)
    # ['Sheet1', 'newSheet'] 现在存在两个sheet表,其中newSheet是新建的
    
    workbook.save(filename='./cash.xlsx')
    

    效果如下
    在这里插入图片描述

    8、删除某个 sheet 表 .remove()

    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    print(workbook.sheetnames)
    # ['Sheet1', 'newSheet'] 目前有两个sheet表
    
    
    # 这个操作相当于激活的这个要删除的 sheet 表,激活状态下,才可以操作;
    remove_sheet = workbook['newSheet']
    
    workbook.remove(remove_sheet)
    
    
    print(workbook.sheetnames)
    # ['Sheet1'] newSheet表已被删除,现在只有一张表
    
    workbook.save(filename='./cash.xlsx')
    

    9、复制一个 sheet 表 .copy_worksheet()

    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    print(workbook.sheetnames)
    # ['Sheet1']
    
    
    # 这个操作相当于激活的这个要操作的 sheet 表,激活状态下,才可以操作;
    copy_sheet = workbook['Sheet1']
    
    workbook.copy_worksheet(copy_sheet)
    
    print(workbook.sheetnames)
    # ['Sheet1', 'Sheet1 Copy']
    
    workbook.save(filename='./cash.xlsx')
    

    在这里插入图片描述
    当然,你还可以再对这个复制出来的表再进行一次复制操作

    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    print(workbook.sheetnames)
    # ['Sheet1', 'Sheet1 Copy']
    
    
    # 这个操作相当于激活的这个要操作的 sheet 表,激活状态下,才可以操作;
    copy_sheet = workbook['Sheet1 Copy']
    
    workbook.copy_worksheet(copy_sheet)
    
    print(workbook.sheetnames)
    # ['Sheet1', 'Sheet1 Copy', 'Sheet1 Copy Copy']
    
    workbook.save(filename='./cash.xlsx')
    

    10、修改 sheet 表的名称 sheet.title

     .title = "新的 sheet 表名"
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    print(workbook.sheetnames)
    # ['Sheet1', 'Sheet1 Copy', 'Sheet1 Copy Copy']
    
    sheet.title = "sheetUpdate"
    print(workbook.sheetnames)
    
    # ['sheetUpdate', 'Sheet1 Copy', 'Sheet1 Copy Copy'],第一张 sheet 表的表名已改变
    # 若excel表中存在多个 sheet 表,默认修改第一张 sheet 表
    
    # 也可以指定 sheet 表更改表名
    updateSheet = workbook['Sheet1 Copy Copy']
    
    updateSheet.title = "sheetUpdate2"
    print(workbook.sheetnames)
    # ['sheetUpdate', 'Sheet1 Copy', 'sheetUpdate2']
    
    workbook.save(filename='./cash.xlsx')
    

    11、创建新的 excel 表格文件

    from openpyxl import Workbook
    
    
    
    workbook = Workbook()
    sheet = workbook.active
    
    # sheet 表名为"表格 1"
    sheet.title = "表格 1"
    
    
    # excel 表名为 “新建的 excel 表格”
    workbook.save(filename = "新建的 excel 表格")
    

    12、冻结窗口 sheet.freeze_panes

     .freeze_panes = "单元格"
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./cash.xlsx')
    
    sheet = workbook.active
    print(sheet)
    
    # 冻结  "C3"单元格
    sheet.freeze_panes = "C3"
    
    
    workbook.save(filename='./cash.xlsx')
    

    效果如下:第一二行固定在表格顶部,第一二列固定在左边,其余可拖动滚动条进行滑动查看
    在这里插入图片描述

    13、给表格添加“筛选器” sheet.auto_filter.ref

     .auto_filter.ref = sheet.dimension 给所有字段添加筛选器;
     .auto_filter.ref = "A1" 给 A1 这个格子添加“筛选器”,就是给第一列添加“筛选器”
    
    from openpyxl import load_workbook
    
    
    
    workbook = load_workbook(filename='./test2.xlsx')
    
    sheet = workbook.active
    # print(sheet)
    sheet.auto_filter.ref = "C1"
    
    workbook.save(filename='./test2.xlsx')
    

    效果如下
    在这里插入图片描述

    展开全文
  • 在使用pandas读入相关excel后,若是表格中有空值列,要如何清洗呢 在查阅了网上相关资料后,得到了办法 pandas.dropna(axis=1,how=‘any’) axis=0指,若是参数中不写,则是默认为axis=0, axis=1则是指列...

    在使用pandas读入相关的excel后,若是表格中有空值的列,要如何清洗呢
    在查阅了网上的相关的资料后,得到了办法

    pandas.dropna(axis=1,how=‘any’)

    axis=0指行,若是参数中不写,则是默认为axis=0,
    axis=1则是指列

    how=‘any’则是指只要列中含有一个空值,就删除该列
    how='all’则是代表只有一整列为空值,才删除该列

    需要注意的是在python3.7的版本里
    使用pandas.dropna需要有一个变量来接收返回值
    否则在运行程序的时候 不会报错 但数据也不会发生改变


    再写一些pandas库中关于excel表格的操作

    #encoding=gb18030
    import numpy
    import pandas as pd
    data_filename = "data/data21695/数据.xlsx"
    df = pd.read_excel(data_filename)
    x = df.dropna(axis=1,how='any')
    g=df["编号"]
    y = len(g)
    i=0
    print(y)
    del x["无机盐"]
    x["无敌"]=x["身高"]
    for i in range(y):
        x.iloc[i,0]=i
    
    x.to_excel('new.xlsx')
    

    pandas.read_excel 读入excel表格

    del[‘无机盐’] 删除名为无机盐的列

    x[‘无敌’]=x[‘身高’] 添加一列名为无敌,将身高这一列的数据复制到无敌这一列

    x.iloc[i,0] 获取第i行,第0列的数据

    x.to_excel 导入至名为new.xlsx的excel表格中

    展开全文
  • 在处理电子表格时,可能经常... 使用Python删除Excel工作表中的行 使用Python删除Excel工作表中的列 为了在Excel工作表中插入或删除行和列,我们将Aspose.Cells for Python via Java它是一个功能强大的电子表格处理A

    在处理电子表格时,可能经常需要在工作表中插入或删除行和列。因此,本文将介绍如何以编程方式处理工作表中的行和列。特别是,将学习如何使用Python在Excel工作表中插入或删除单行或多行和多列。

    • 使用Python在工作表中插入行
    • 使用Python在Excel工作表中插入列
    • 使用Python删除Excel工作表中的行
    • 使用Python删除Excel工作表中的列

    为了在Excel工作表中插入或删除行和列,我们将Aspose.Cells for Python via Java它是一个功能强大的电子表格处理API,可为Excel自动化提供多种功能。你可以下载Aspose.Cells for Python via Java使用。


    使用Python在Excel工作表中插入行

    以下是使用Python在Excel工作表中插入行的步骤。

    1. 首先,使用Workbook类加载Excel文件。
    2. 使用Workbook.getWorksheets().get(index)方法通过索引访问所需的工作表。
    3. 使用Worksheet.getCells().insertRows(rowIndex,totalRows)方法插入行,其中第一个参数是行索引,第二个参数是要插入的行数。
    4. 最后,使用Workbook.save(string)方法保存更新的文件。

    下面的代码示例演示如何使用Python在Excel工作表中插入行。

    # Instantiate a Workbook object by excel file path
    workbook = self.Workbook("Book1.xls")
    
    # Access the first worksheet in the Excel file
    worksheet = workbook.getWorksheets().get(0)
    
    # Insert a row into the worksheet at 3rd position
    worksheet.getCells().insertRows(2,1)
    
    # Save the modified Excel file in default (that is Excel 2003) format
    workbook.save("Insert Row.xls")
    print "Insert Row Successfully."

    使用Python在Excel工作表中插入列

    以下是使用Python在Excel工作表中插入列的步骤。

    1. 首先,使用Workbook类加载Excel文件。
    2. 使用Workbook.getWorksheets().get(index)方法通过索引访问所需的工作表。
    3. 使用Worksheet.getCells().insertColumns(columnIndex,totalColumns)方法插入列,其中第一个参数是列索引,第二个参数是要插入的列数。
    4. 最后,使用Workbook.save(string)方法保存更新的文件。

    下面的代码示例演示如何使用Python在Excel工作表中插入列。

    # Instantiate a Workbook object by excel file path
    workbook = self.Workbook('Book1.xls')
    
    # Access the first worksheet in the Excel file
    worksheet = workbook.getWorksheets().get(0)
    
    # Insert a column into the worksheet at 2nd position
    worksheet.getCells().insertColumns(1,1)
    
    # Save the modified Excel file in default (that is Excel 2003) format
    workbook.save("Insert Column.xls")
    print "Insert Column Successfully."

    使用Python在Excel中删除行

    以下是使用Python从Excel工作表中删除行的步骤。

    1. 首先,使用Workbook类加载Excel文件。
    2. 使用Workbook.getWorksheets().get(index)方法通过索引访问所需的工作表。
    3. 使用Worksheet.getCells().deleteRows(rowIndex,totalRows)方法删除行,其中第一个参数是行索引,第二个参数是要删除的行数。
    4. 最后,使用Workbook.save(string)方法保存更新的文件。

    以下代码示例显示了如何从Python中的Excel工作表中删除行。

    # Instantiate a Workbook object by excel file path
    workbook = self.Workbook("Book1.xls")
    
    # Access the first worksheet in the Excel file
    worksheet = workbook.getWorksheets().get(0)
    
    # Delete 10 rows from the worksheet starting from 3rd row
    worksheet.getCells().deleteRows(2,10,True)
    
    # Save the modified Excel file in default (that is Excel 2003) format
    workbook.save("Insert Row.xls")
    print "Insert Row Successfully."

    使用Python在Excel中删除列

    以下是使用Python从Excel工作表中删除列的步骤。

    1. 首先,使用Workbook类加载Excel文件。
    2. 使用Workbook.getWorksheets().get(index)方法通过索引访问所需的工作表。
    3. 使用Worksheet.getCells().insertColumns(columnIndex,totalColumns,updateReference)方法删除列。第一个参数是列索引,第二个参数是要删除的列数,第三个参数指示是否需要在其他工作表中更新引用。
    4. 最后,使用Workbook.save(string)方法保存更新的文件。

    下面的代码示例演示如何使用Python从Excel工作表中删除列。

    # Instantiate a Workbook object by excel file path
    workbook = self.Workbook('Book1.xls')
    
    # Access the first worksheet in the Excel file
    worksheet = workbook.getWorksheets().get(0)
    
    # Delete a column from the worksheet at 2nd position
    worksheet.getCells().deleteColumns(1,1,True)
    
    # Save the modified Excel file in default (that is Excel 2003) format
    workbook.save("Insert Column.xls")
    print "Insert Column Successfully."

    如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询

    展开全文
  • python openpyxl包如何删除行

    千次阅读 2020-03-10 17:06:48
    workbook = openpyxl.load_workbook(path) ...worksheet.delete_rows(1)#表示删除表格的第一 workbook.save(path) 注意两点: 1 worksheet.delete_rows(i) 中的I从1开始 不是从0开始 2 要记得保存 否则删除无效 ...
  • 使用python中pandas删除数据中的空值

    千次阅读 2020-10-13 15:02:41
    下面使用pandas中的方法去掉带有空值的行 import pandas as pd import pandas as pd data=pd.read_excel('文档目录\\test.xlsx') pds=pd.DataFrame(data=data) print(pds) ###去除空值行方法 pddrop=pds....
  • python删除表格中常用方法是DataFrame.drop()函数,DataFrame.drop()常用操作是删除一整行或者删除某一整列。对于删除某一列满足条件所有操作暂不支持; 下面给大家介绍另外一个方法,支持删除和筛选...
  • 需要加入部分:当有同名文件时候,需要删除源文件或者直接说:文件存在。 懒得写。 第二,默认路径是F:\k1,理论上可以写一个LOG.txt储存全局变量。下次读取时候读取LOG文件。 懒得写。 第三,CSV在数据有...
  • 1.定位table并获取数据 def get_table_content(self, dr, tableId): """ 读取列表数据 :param dr: :param tableId: 列表ID :return: """ ... # 根据table ID定位到表格 table = dr.find_elem
  • Python-Excel获取最大与列

    万次阅读 2018-07-26 17:22:44
    python编程快速上手》中的第12章:处理Excel电子表格。 get_highest_row()和get_highest_column()在最新版的openpyxl模块中已经被删除了,取而代之的是max_row和max_column两个方法。 import openpyxl wb1=...
  • 本次练习的主要内容是: ...读取记事本中的内容并删除不同长度的空格 f1 = open(r"C:\Users\ASUS\Desktop\空气污染物资料\2015-2016\北京-02.txt", 'r') content = f1.readlines()#读取记事本所有 data_l...
  • Python学习笔记(26)-读取excel表格信息

    千次阅读 2017-07-11 11:24:12
    一,excel表格中的相关概念工作簿:一个excel文件是一个工作簿 工作表:一个工作簿默认包含三个工作表:Sheet1、Sheet2、Sheet3,工作表可以新建、删除、重命名 与列:一个工作表包含很多,一般以1,2,3,4…命名...
  • 1. 删除重复和空行 我们直接用dict.fromkeys方法把当前数据转为字典,默认值为None因为用不到,也就无所谓了。然后我们再用list直接对结果进行类型转换,转换为list。 在学习过程有什么不懂得可以加我 ...
  • ⅳ、从表取得和列 ????②、写入 Excel 文档 ⅰ、创建并保存 Excel 文档 ⅱ、创建和删除工作表 ⅲ、将值写入单元格 ????③、 设置单元格字体风格 ????④、 公式 ????⑤、 调整和列 ⅰ、设置行高和...
  • Pandas: PythonExcel

    2019-11-18 18:14:19
    Pandas基本概念导入数据表格行列单元格基本操作插入插入列删除行删除列数据操作筛选排序唯一值删除重复值空值处理函数数据透视表(分类统计)分类求和:分类计数:分类平均值:分类最大值:分类最小值:参考文档 ...
  • 在获取最大get_highest_row(),和最大列get_...经过查找发现,get_highest_row()和get_highest_column()在最新版openpyxl模块已经被删除了, 被 max_row和max_column属性替换 注:不需要括号 获得结果 ...
  • 用于读取和写入FITS文件的python库。... 查询表中的列和。 读写标题关键字。 以图块压缩格式(RICE,GZIP,PLIO,HCOMPRESS)读取和写入图像。 直接读取/写入gzip文件。 读取unix compress(.Z,.zip)和
  • tablib:一个用来处理中表格数据模块。 Office Marmir:把输入 Python 数据结构转换为电子表单。 openpyxl:一个用来读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件库。 pyexcel:一个提供统一 API,用来...
  • 是指采用了关系模型来组织数据的数据库,简单来说,关系模型指的就是二维表格模型,好比Excel文件中的表格,强调使用表格的方式存储数据。 关系型数据库的核心元素 数据 数据列 数据表 数据库 常用关系型数据库 ...
  • SQLAlchemy首次发行于2006年2月,并迅速地在Python社区最广泛使用ORM工具之一,不亚于DjangoORM框架。 本文将介绍如何使用SQLAlchemy操作MySQL,完成基础表创建,表格数据新增、查询、修改、删除(CRUD)...
  • 在workbook添加worksheetformat是最重要部分常用format选项设置一些常用字体、格式format设置条件格式练习直接用write写用write_……函数写设置宽,列宽,行列格式提取表格名字合并表格冻结窗格删除所有...

空空如也

空空如也

1 2 3 4
收藏数 72
精华内容 28
关键字:

python删除表格中的行

python 订阅