簡単な質問です。数値を変更せずにパーセント記号を数値に追加する方法です。myStyleFont.num_format_str = '0.00%'でパーセントをフォーマットしようとしましたが、100で乗算されますが、パーセントを追加するだけで済みます。
事前にタイ。
よろしく。
簡単な質問です。数値を変更せずにパーセント記号を数値に追加する方法です。myStyleFont.num_format_str = '0.00%'でパーセントをフォーマットしようとしましたが、100で乗算されますが、パーセントを追加するだけで済みます。
事前にタイ。
よろしく。
誰にでも明確にするために、これはxlwtのパーセンテージとして数値をフォーマットする例です。
from xlwt import easyxf, Workbook
wb = Workbook()
ws = wb.add_sheet('Formatting Sheet')
style_percent = easyxf(num_format_str='0.00%')
ws.write(0, 5, 0.12, style_percent)
これは、Excelセルに「12.00%」と表示されます。
注意:「変更」および「100で乗算」は表示結果に影響し、ファイルに保存されている値にも数式計算で使用される値にも影響しません。
演算子をリテラルとして扱わせる手法は、「エスケープ」として知られています。
Excelの数値形式の文字列のエスケープ文字は円記号です。
あなたがやりたいことをするために、あなたのフォーマットはr"0.00\%"
または"0.00\\%"
上記はExcelのプロパティであり、Pythonxlwt
などに限定されません。これは、UI(Excel、OpenOffice Calc、Gnumeric)のいずれかを使用してテストできます。
作成するドキュメントを読んで理解するユーザーが制限されている場合を除いて、[ありそうもない* 3]、そうすべきではないことに注意してください。かなり混乱します。通常のExcelユーザー5.00%
は、基になる数値がであると想定してい0.05
ます。これを確認するには、ExcelなどでこれらをA1、A2、A3に入力します。次に5%
... A3に表示されます。.05
=A1=A2
TRUE
pyExcelerator
アバンダンウェアです。なぜあなたはそれについて言及しますか?
(1)についてmyStyleFont.num_format_str = '0.00%'
「font」と「num_format_str」は、XFとも呼ばれるスタイルの完全に独立したコンポーネントです。変数名「myStyleFont」が混乱しています。(2)属性をオブジェクトに突っ込んでXFを設定するのは、昔からのやり方xlwt
です。easyxf
代わりに使用してください。
数値形式はパーセンテージを想定している00.0%
ため、100を掛けて表示するのが正しい動作です。必要な結果を得るには、選択した形式の文字列としてセルにデータを配置するか、セルに値を格納する前に100.0で除算することができます。
これを行う
フォーマットスタイル「0.00%」を適用する前に、値を100で除算します
style = XFStyle()
style.num_format_str = '0.00%'
new_val = '502.22'
sheet = wb.add_sheet('Sheet1')
sheet.write(num, 1, new_val/100, style)
wb.save('sample.xls')
これがあなたの目的に役立つことを願っています。