#【環境】
windows8.1
python2.7
#【概要】
ExcelをIDE(統合開発環境)のように使います。
#【フォルダ構成】
excel_python
|---code_gene.py
|---code_gene.xlsx
#【Excel】
フィボナッチ数列を出力するプログラムを書きました。
Excelのセル1つがpythonでのインデント1つになります。
#【プログラム】
code_gene.py
# -*- coding: utf-8 -*-
from excel import OpenExcel
# ファイル読み込み
f = OpenExcel('code_generation.xlsx')
# cell_valueに行ごとにセルの値を追加
cell_value = []
for row in xrange(1, len(f.read('A')) + 1):
cell_value.append(f.read(row))
# 改行のみの行に改行コードを代入
for row in xrange(len(cell_value)):
kaigyo = ""
for col in xrange(len(cell_value[0])):
kaigyo += kaigyo + cell_value[row][col]
if kaigyo == "":
cell_value[row][0] = "\n"
# コード生成
for row in xrange(len(cell_value)):
for col in xrange(len(cell_value[0])):
if not len(cell_value[row][col]) == 0:
print cell_value[row][col]
break
else:
print " ",
このプログラムを実行します。
実行方法は
python code_gene.py > code.py & python code.py
#【実行結果】
1
1
2
3
5
8
13
21
34
55
code.py
# -*- coding: utf-8 -*-
def fib(n):
if n < 2:
return 1
else:
return fib(n-1) + fib(n-2)
for i in xrange(10):
print fib(i)
#【問題】
Excelでの改行1つが、出力したpythonファイルでは改行2つになってしまう。
#【参考サイト】
めざせpythonライブラリマスター (12)excel