我写入数据到excel里面的时候,单元格的列数总数和预期的不一样

来源:13-11 项目实战之结果回写操作

_静言_

2020-07-14

来说,我是把excel里面的列号单独写在了一个常量类里面直接调用出来的
在没有写入数据的情况下,通过已配置的列号可以支持获取到指定单元格的数据,但是写入的时候总数会写在规定的单元格列数-1里面
这是我的常量类:

"""#
存放配置数据
存放case中各项参数对应的列号
"""


class config_data:
    ID = 0
    name = 1
    host = 2
    url = 3
    is_run = 4
    method = 5
    header = 6
    case_depend = 7
    data_depend = 8
    field_depend = 9
    data = 10
    expect_type = 11
    expect = 12
    result = 13
    result_data = 14
# 获取case ID的列号
def get_ID_column():
    return config_data.ID
# 获取case name的列号
def get_name_column():
    return config_data.name
# 获取case name的列号
def get_host_column():
    return config_data.host
# 获取case url的列号
def get_url_column():
    return config_data.url
# 获取case is_run的列号
def get_is_run_column():
    return config_data.is_run
# 获取case method的列号
def get_method_column():
    return config_data.method
# 获取case header的列号
def get_header_column():
    return config_data.header
# 获取case case_depend的列号
def get_case_depend_column():
    return config_data.case_depend
# 获取case data_depend的列号
def get_data_dapend_column():
    return config_data.data_depend
# 获取case field_depend的列号
def get_field_depend_column():
    return config_data.field_depend
# 获取case data的列号
def get_data_column():
    return config_data.data
# 获取case expect的列号
def get_expect_type_column():
    return config_data.expect_type
# 获取case expect的列号
def get_expect_column():
    return config_data.expect
# 获取case result的列号
def get_result_column():
    return config_data.result
# 获取result_data的列号
def get_result_data():
    return config_data.result_data

这是获取指定单元格的方法:

    def get_sheet_cell_value(self, row, column):
        """
        获取指定的sheet table的单元格的值
        """
        cell_value = self.get_sheet().cell(row=row, column=column)
        return cell_value

get_case_data = GetRequestData()

if __name__ == '__main__':
    print(get_case_data.get_sheet_cell_value(2, 13).value)

因为获取的是一个列表,我就送0开始取值,但是实际从0开始取值就会报错,但是我依然从0开始取值,只是调用方法就能正常获取到从0开始的所有单元格的值,唯独写入的时候直接根据写死的列号就不行,就会覆盖预期列-1的列的值

写回答

1回答

Mushishi

2020-07-14

你先通过直接最简单得写法,直接在一个空格里面去写入一个value,然后指定行、列,你去看一下是否能达到你得预期,如果能达到,那么你就需要通过去看你代码,一步一步打印看问题了

0
3
Mushishi
回复
_静言_
哈哈,不错不错,加油
2020-07-15
共3条回复

Python接口自动化测试框架实战

主流框架Unittest与接口测试结合,带你深入学习接口自动化框架的设计与开发

1509 学习 · 844 问题

查看课程