我对 Python 比较陌生,目前我正在努力完成我目前正在研究的这个小部分。高级:使用 POI 和 Jython 将 2 列数据从 .csv 文件移动到 .xls。低级:从 .csv 文件中仅读取两列数据。读取数据后,我将第二行中的数据组织到不同的数组中。例如
Name Status arrayGreen = ['a, Green'], ['aa, Green']
a Green arrayRed = ['b, Red'], ['bb, Red']
b Red TO => arrayOrange = ['c, Orange'], ['cc, Orange']
c Orange arrayYellow = ['d, Yellow'], ['dd, Yellow']
d Yellow
aa Green
bb Red
cc Orange
dd Yellow
一旦我将该数据读入数组,我就想从数组数据中删除“,”,因为我现在按数组将它们分组以供以后使用。所以现在数据在数组中看起来像这样:
arrayGreen = ['a'], ['aa']
arrayRed = ['b'], ['bb']
arrayOrange = ['c'], ['cc']
arrayYellow = ['d'], ['dd']
现在我想开始使用 apache POI 来使用数组中的数据并将它们写入 .xls 我知道如何设置一些格式并使用 POI 从 .xls 读取数据,但这就是我坚持的地方。
到目前为止,这是我的代码:
file = open('CSVItems.csv', 'r')
for line in file.readlines():
content = [value for value in line.split()]
arrayGreen = [x for x in content if 'Green' in x]
arrayRed = [x for x in content if 'Red' in x]
arrayOrange = [x for x in content if 'Orange' in x]
arrayYellow = [x for x in content if 'Yellow' in x]
if arrayGreen:
arrayGreen = [x.replace(',Green', '') for x in arrayGreen]
print arrayGreen
elif arrayRed:
arrayRed= [x.replace(',Red', '') for x in arrayRed]
print arrayRed
elif arrayOrange:
arrayOrange= [x.replace(',Orange', '') for x in arrayOrange]
print arrayOrange
elif arrayYellow:
arrayYellow= [x.replace(',Yellow', '') for x in arrayYellow]
print arrayYellow
Console:
['a']
['b']
['c']
['d']
['aa']
['bb']
['cc']
['dd']
如何使用 Jython 在 POI 中将每个 arrayGreen、arrayRed、arrayOrange、arrayYellow 写入其自己的列。
最终 result.xls 看起来像这样:
Green Red Orange Yellow
a b c d
aa bb cc dd
谢谢。