前回のBautzenの戦いの集計に使ったプログラムを下記に示す。
1.プログラムソース
Pythonプログラムソースを最後に示す(長いので)。
2.プログラムの考え方メモ
(1)検索と集計の方法は、ほぼユニット種別共通である。
(2)歩兵の場合のみ、連隊でなく大隊のみを集計するために、
検索条件にand name NOT LIKE “%Reg%”を追加する。
これは、連隊の場合に、必ず名称にRegを付けているので出来る。
(3)指揮官の場合、歩兵ボーナスに6/8などの攻撃時と防御時で
違う場合がある。その為に、数字とマイナス(ー)以外の文字を
reモジュールで検索し、見つけたら/の文字で分割する。
能力は、両方の平均値を集計に使う。
(4)士気の表記は6進数の方が分かりやすい。その為、集計用には
10進数に変換して計算し、結果を6進数に変換した。
この変換用に2つの関数を作成した。
<個人的な感想>
1つのユニット種別が集計できれば、他は多少修正して出来る。
プログラムのステップ数の割には、基本となる部分のステップ数は
多くないので、比較的簡単に作成できた。