」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 在 Python 中使用佔位符格式時如何避免“類型錯誤:未轉換所有參數”

在 Python 中使用佔位符格式時如何避免“類型錯誤:未轉換所有參數”

發佈於2024-11-03
瀏覽:453

How to Avoid \

以% 格式取代佔位符時出現型別錯誤

嘗試使用% 格式取代{0} 等佔位符時,開發人員可能會遇到以下情況錯誤:「類型錯誤:並非所有參數在字串格式化期間都已轉換。」此錯誤源自於格式不正確,特別是由於舊式% 格式和新式{} 格式之間的混淆所致。

舊式 % 格式使用 %d 等佔位符進行格式設置,如下例所示:

'It will cost $%d dollars.' % 95

但是,當使用多個值時,它們必須作為元組提供:

"'%s' is longer than '%s'" % (name1, name2)

另一方面,新式{} 格式使用{} 等佔位符和.format 方法。避免混合這兩種風格至關重要。如果模板字串包含 {} 佔位符,則應使用 .format,而不是 %.

# Correct:
'It will cost ${0} dollars.'.format(95)
"'{0}' is longer than '{1}'".format(name1, name2)

# Incorrect (Do not mix % and {}):
'It will cost ${0} dollars.' % 95
"'%0' is longer than '%1'" % (name1, name2)

透過遵守這些格式指南,開發人員可以解決「TypeError: not all argument conversion during string formatting」錯誤和格式他們的字元串正確。

版本聲明 本文轉載於:1729221315如有侵犯,請洽[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3