使用PYTHON或其他编程方法将EXCEL中的文本作为LIST写入文本

时间:2014-09-07 15:35:42

标签: python excel

我有一个excel文件,其中包含我想要写入文本的值,如下图所示的图像右侧所示。我一直在手工做这件事,但这很乏味enter image description here。我尝试过使用python,但到目前为止,我对python的累积知识感到沮丧。谢谢你的帮助

对于那些看不到它的人,我希望它输出为

[wind#]
Height=
Direction=
Velocity=

1 个答案:

答案 0 :(得分:1)

你可以将你的excel文件导出到.csv(我希望你能弄清楚如何自己做这个)文件并得到这样的东西:

height,direction,speed
1,2,3
3,2,1

使用以下.py脚本,您可以获取输入文件(采用csv格式)并将其转换为输出。其中input.csv是你的csv文件,它与你的脚本位于同一个文件夹中,而output.txt就是你的结果文件。

f = open('input.csv', 'r')
g = open('output.txt', 'w')

# Header lines must be kept separately since we will be using them for every time
first_line = f.readline()
headers = first_line.split(',')
headers[-1] = headers[-1].strip()
length = len(headers)

# Capitalize each header word.
for i in range(length):
    headers[i] = headers[i].capitalize()


counter = 1
for line in f:
    values = line.split(',')
    values[-1] = values[-1].strip() #remove EOL character
    g.write('[Wind' + str(counter) + ']' + "\n")
    for i in range(length):
        g.write(headers[i] + "=" + values[i] + "\n")
    counter += 1

g.close()
f.close()

输入:

height,direction,speed
1,2,3
3,2,1

输出:

[Wind1]
Height=1
Direction=2
Speed=3
[Wind2]
Height=3
Direction=2
Speed=1