レシートを文字列形式で作成し、メインプログラムに渡してから印刷します。私は、forループでこれを実行しようとしましたが、私 - 彼らは、float値をリストから作成された.format()を使用した複数行の文字列インデント
food_prices = "\n22.40\n13.40\n"
drink_prices = "\n11.50\n6.90\n"
:
だから、私は1つそれぞれの間に\ nの価格を含む2つの文字列を持っています決してそれを働かせることはできません。領収書の文字列がメインプログラムに渡された後に私が得たのは信じられないほどバグの多いプリントでした。
それぞれが(\ nのために)独自の行に印刷されるように.format()でフォーマットしようとしていますが、右側に16個の "room"スペースがインデントされています。出力が可能になっているものの例:
receipt = (...
"Food:\n"
"{:>16}"
"Drinks:\n"
"{:>16}"
"------------------------------\n"
"{:>7.2f}"
"Total {:>7.2f}\n").format(food_prices, drink_prices, total)
をような出力が見えるもの::インデントは一つだけで作業を行い
Food:
12.4
5.43
7.65
Drinks:
5.4
8.76
5.4
------------------------------
Total 45.04
私が試してみました何
123456789# For readability, ignore
Food:
22.40
13.40
Drinks:
11.50
6.90
------------------------------
Total 54.20
しかし、文字列( "\ n0.00 \ n")の価格。私はこれをどうすればいいのか正確にはわからない。私は公式の文書(とPEP)を参照し、いくつかのグーグルでやった。