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

Read multiple lines in a single excel cell using python

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

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

信号1:20

信号 2: 30

信号 3: 40

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

任何帮助将不胜感激。

单元格将作为单个字符串返回,每行包含 \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']

正在导入 csv 模块

导入 csv

文件名 = "test.csv"

输出=[]

with open(filename, 'r') as csvfile:

正在创建一个 csv reader 对象

csvreader = csv.reader(csvfile)  

逐行提取每个数据行

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