使用python在单个excel单元格中读取多行

时间:2016-02-11 14:27:29

标签: python excel win32com

有没有办法逐行读取单个Excel单元格中的多行。我需要这个来访问信号名称及其值

假设以下三行在一个excel单元格中

Signal1:20

signal2:30

signal3:40

我想分别逐行访问这些,以使用python win32com获取信号名称及其值。如果这些行在单个单元格中,我可以这样做但是,我不能使用这种方法,因为存在一些依赖性。

任何帮助都会非常感激。

2 个答案:

答案 0 :(得分:1)

导入csv模块

导入csv

filename =“ test.csv”

输出= []

以open(filename,'r')作为csvfile:

创建csv阅读器对象

csvreader = csv.reader(csvfile)  

逐行提取每个数据行

for row in csvreader:
    output.append(row[0].split('\n'))

答案 1 :(得分:0)

单元格将作为单个字符串返回,每行包含\n个字符。因此,标准Python split可用于为您提供行列表:

import win32com.client as win32
excel = win32.gencache.EnsureDispatch('Excel.Application')

wb = excel.Workbooks.Open(r"E:\Python temp\example.xls")
ws = wb.Worksheets("Sheet 1")
print ws.Range("A1").Value.split('\n')
excel.Application.Quit()

给出类似的东西:

[u'Signal1: 20', u'signal2: 30', u'signal3: 40']