格式化整数和浮点数


import locale
import math

# 以:开始

# 整数和浮点数

# 可选的填充字符
print("{0:012}".format(-8749203))
print("{0: 12}".format(-8749203))
print("{0:12}".format(-8749203)) #默认空字符填充

# 可选的对齐方式

print("-----------------------")

print("{0:#<12}".format(-8749203))
print("{0:#>12}".format(-8749203))
print("{0:#^12}".format(-8749203))
print("{0:#=12}".format(-8749203))
print("{0:#12}".format(-8749203)) #默认右对齐


# 可选的控制符号字符

print("-----------------------")

print("{0:#>+12}".format(8749203))  # +号表示必须输出符号,无论正负
print("{0:#>+12}".format(-8749203))


print("{0:#>-12}".format(8749203))  # -号表示只输出负号
print("{0:#>-12}".format(-8749203))

print("{0:#> 12}".format(8749203))  # 空格表示正数时输出空格,负数时输出负号
print("{0:#> 12}".format(-8749203))

# 可选的最小宽度整数值
print("-----------------------")

print("{0:10}".format(-8749203))

# 可选的某种进制前缀输出,使用#号引导

print("-----------------------")

print("{0:#b}".format(456)) # 二进制
print("{0:#o}".format(456)) # 八进制
print("{0:#x}".format(456)) # 八进制
print("{0:#X}".format(456)) # 八进制



# 可选的用于输出非10进制数时的符号
print("-----------------------")

print("{0:d}".format(456)) # d表示输出默认的十进制
print("{0:d}".format(-456))

print("{0:b}".format(456)) # b表示输出二进制
print("{0:b}".format(-456))

print("{0:o}".format(456)) # o表示输出八进制
print("{0:o}".format(-456))

print("{0:x}".format(456)) # x表示输出小写十六进制
print("{0:x}".format(-456))


print("{0:X}".format(456)) # X表示输出大写十六进制
print("{0:X}".format(-456))

print("{0:c}".format(8364)) # c表示输出unicode字符


# 可选的逗号输出
print("-----------------------")

print("{0:,}".format(789456123))

print("-----------------------")

# 可选的n

x, y = (1234567890, 1234.567)

locale.setlocale(locale.LC_ALL, "C")

print("{0:n} {1:n}".format(x, y))


locale.setlocale(locale.LC_ALL, "en_US.UTF-8")

print("{0:n} {1:n}".format(x, y))

locale.setlocale(locale.LC_ALL, "de_DE.UTF-8")

print("{0:n} {1:n}".format(x, y))

# 浮点数

print("-----------------------")

amount = 10 ** 3 * math.pi

# 可选的类型字符

# e表示e形式的指数表示
print("{0:20e}".format(amount)) 

# E表示E形式的指数表示
print("{0:20E}".format(amount))

# f表示使用标准的浮点形式
print("{0:20f}".format(amount))


# g表示使用”通常“格式
print("{0:20g}".format(amount))   # 数字不大时与 f 效果相同
print("{0:20g}".format(amount * 10 **50)) # 数字大时与 e 效果相同

# G表示使用”通常“格式
print("{0:20G}".format(amount))   # 数字不大时与 f 效果相同
print("{0:20G}".format(amount * 10 **50)) # 数字大时与 E 效果相同

# %表示百分数
print("{0:20%}".format(math.pi))

# .x表示保留x位小数(会四舍五入)
print("{0:20.5%}".format(math.pi))

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容