亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在格式字符串中可能遇到單個 '}'

在格式字符串中可能遇到單個 '}'

慕村9548890 2021-08-17 10:11:48
使用時是否可以連接字符串.format()?_NACHKOMMASTELLEN = 3print("  {0:." + str(_NACHKOMMASTELLEN) + "f}".format(round(V_values[0], _NACHKOMMASTELLEN)), end='')我收到錯誤:在格式字符串中遇到單個 '}'
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

您需要將字符串括在括號中:

print(("  {0:." + str(_NACHKOMMASTELLEN) + "f}").format(round(V_values[0], _NACHKOMMASTELLEN)), end='')
      ^                                        ^

所以這"  {0:." + str(_NACHKOMMASTELLEN) + "f}"將被格式化而不是"f}"


查看完整回答
反對 回復 2021-08-17
?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

如果你低于 3.6 你可以雙重格式化:


_NKS = 3? ?# shortened for 79 line char limit

V_values = [3.123456789]

print("? {{:.{}f}}".format(_NKS ).format(round(V_values[0], _NKS )))

第一format放3的就地{}并轉換雙{{和}}單{和}-所產生的字符串{:.3f},然后用于第二format。


格式比我好。這也適用:


print("? {:.{}f}".format(round(V_values[0], _NKS ),_NKS ))

輸出:


? 3.123

如果您已經使用 3.6,則不需要 - f-strings 可以更好地處理它:


_NACHKOMMASTELLEN = 3

V_values = [3.123456789]

print(f"? {round(V_values[0], _NACHKOMMASTELLEN):.{_NACHKOMMASTELLEN}f}")

V_values = [3.1]

print(f"? {round(V_values[0], _NACHKOMMASTELLEN):.{_NACHKOMMASTELLEN}f}")

輸出:


? 3.123

? 3.100


查看完整回答
反對 回復 2021-08-17
  • 2 回答
  • 0 關注
  • 167 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號