本文详细介绍了在Python编程语言中使用%s、%d和%f进行字符串格式化的技巧与方法,帮助读者掌握如何灵活运用这些符号来处理不同类型的数据。
Python字符串格式化是一种强大的工具,用于构建动态生成的字符串,并能嵌入变量值。在Python中使用 `%` 操作符进行格式化,支持多种类型的格式化符号如 `%s`, `%d`, 和 `%f` 等。
1. 使用 `%s` 格式化字符串:例如 `print(string=%s % hello)` 将输出 `string=hello`. 若指定宽度(比如 `%7s`),则根据宽度调整字符串。若字符串长度小于指定的宽度,会在左侧填充空格;使用负号 `-` 则在右侧填充空格。如 `print(string=%-7s % hello)` 输出为 `string=hello `, 而 `print(string=%7s % hello)` 输出为 `string= hello`.
还可以通过小数点后跟数字限制显示的字符数量,例如使用 `%.2s` 只会输出前两个字符。如:`print(string=%.2s % hello)` 将输出 `string=he`.
2. 使用 `%d` 格式化整数:比如 `print(num=%d % 14)` 输出为 `num=14`. 指定宽度(例如使用 `%3d`),则输出时占据特定的宽度。若数字位数不足,则在左侧填充空格,默认;或右侧填充空格,如果用 `-` 表示。如:`print(num=%-3d % 14)` 输出为 `num=14`, 而 `print(num=%3d % 14)` 输出为 `num= 14`.
3. 使用 `%f` 格式化浮点数,可以指定小数位数。例如使用 `%5.2f` 可以显示宽度为五字符的数字,并且保留两位小数。如:`print(float=%5.2f % 3.14159)` 输出为 `float= 3.14`.
4. 综合应用这些格式化符号,例如 `%7.2d` 表示宽度七位并显示两个整数值。
5. 变长的宽度和精度:可以使用星号(*)作为占位符来指定运行时动态提供的值。如 `print(num=%*.*d % (3, 1, 14))` 输出为 `num= 14`.
在Python中,尽管 `%` 操作符仍然有用(特别是在处理旧代码或与C语言风格的接口交互),但更现代的方法是使用字符串的 `.format()` 方法。理解这些基本格式化符号对于编写高效和清晰的Python代码至关重要。