使用python的Excel样式自动填充

时间:2014-12-18 04:41:52

标签: python

我有一个包含小计和分组的Excel文件,如

Region  |Country      |State
--------|-------------|-----
Americas|United States| AA
        |             | AE
        |             | AK
        |Canada       | AB
        |             | BC
Europe  |France       | A1
        |             | A2
        |             | A3  

我希望填充每个空白单元格,以便将其加载到数据表 - 有点像电子表格自动填充功能,以便CSV中的输出看起来像

Region  ,Country       ,State
Americas,United States ,AA
Americas,United States ,AE
Americas,Canada        ,AB
Americas,Canada        ,BC
...

我正在使用以下代码,但我认为可能有更好的方法来执行此操作

csv_file = open(opFile, 'w')
with open(fname) as input_file:
    for row in csv.reader(input_file, delimiter=','):
        for curCol, col in enumerate(row):
            colText = "".join(map(str,col)).strip('"').strip()  
            if curCol in autoFillCols:
                if colText == "":
                    colText = lastValues[curCol]
                else:
                    lastValues[curCol] = colText
            csv_file.write('"' + colText + '",')
        csv_file.write('\n')
csv_file.close()

1 个答案:

答案 0 :(得分:0)

查看String包(https://docs.python.org/2/library/string.html)。它有功能:

string.ljust(s, width[, fillchar])
string.rjust(s, width[, fillchar])
string.center(s, width[, fillchar])

在实践中,这些可以简单:

"Welcome to WonderApp".center(74)