python中format函数详细用法以及占位符的简单使用

引言

  • 个人感觉相对来说占位符在简单使用的时候比format方便,但是如果有一些复杂点的操作,format就比占位符更丝滑了,看个人喜好和应用场景

  • 本文总结的还是不太全面,只有一些常用的方法,仅供参考

  • 如果有错误的地方欢迎指正~

Format函数

  • format函数的格式控制python中format函数详细用法以及占位符的简单使用_第1张图片

1 format最基础的用法,即占位以及定义占位顺序

python中format函数详细用法以及占位符的简单使用_第2张图片

format中传入对象(个人从未使用过的方式,看着应该以后能用上)

python中format函数详细用法以及占位符的简单使用_第3张图片

format中单独使用精度的详细用法,以及精度配合填充以及对齐,宽度的搭配使用

  • 详细试验了精度的搭配用法,其他功能组合暂未试验,个人不常用,以此类推试验一下即可

  • 简单的控制保留精度python中format函数详细用法以及占位符的简单使用_第4张图片

  • 精度除了对浮点数使用,也可以对字符串使用,但是不能对整形使用python中format函数详细用法以及占位符的简单使用_第5张图片

  • 参考最上面的format函数格式图片,做以下组合使用

  • 包含配合填充对齐使用,填充,精度使用等等python中format函数详细用法以及占位符的简单使用_第6张图片

format一些其他功能的使用

  • 科学计数法,指数表示,分隔符,百分位数,百分位与精度的搭配使用
    python中format函数详细用法以及占位符的简单使用_第7张图片
  • 百分号与百分号结合精度
    python中format函数详细用法以及占位符的简单使用_第8张图片

关于转换不同进制以及参考文章中例子引发的思考

  • 为什么这个:02有填充的作用?感觉有点复杂,组合的多种多样,本文很难面面俱到了,以后遇到再补充python中format函数详细用法以及占位符的简单使用_第9张图片

format测试部分代码

# 尝试组合技(精度部分)
# 浮点数小数的位数
print("{:.2f}".format(3.1415926)) 
# 字符串的输出长度
print("{:.2s}".format("我是你爹")) 
# 整数(显然是不支持的,毕竟整数输出一半是错的)
print("{:.2d}".format(3456)) 

# 填充与精度的正确结合结合(显然只能是正负号的结合)以及宽度,对齐与精度的正确结合(以精度为例,其他的以此类推)
print("{:0.2f}".format(3))  # 精度与宽度结合(控制输出的位置,结合对齐使用更佳)
print("{:10.2f}".format(3)) # 默认的右对齐,居中和左对齐已经图示过了(见下方),算了写一下吧
print("{:<10.2f}".format(3)) # 左对齐
print("{:^10.2f}".format(3)) # 居中对齐
print("{:-^10.2f}".format(3))  # 居中+填充功能
print("{:*^20.2f}".format(3))

print("{:+.2f}".format(3))
print("{:?.2f}".format(3))    # 报错试验放到最后方便截图

# 关于百分号单独的应用以及结合浮点数应用(其他组合以此类推)
print("{:%}".format(3)) # 单独使用显然不太好使
print("{:10%}".format(3)) # 不是用.不会触发精度功能,也就是没啥用
print("{:.3%}".format(3.1415926)) # 结合精度使用

占位符的简单应用

  • 简单总结就是:

  • 1 占位符%s既可以表示字符串str,还可以表示整数int,浮点数float;

  • 2 占位符%d既可以表示整数int,还可以表示浮点数float(去除小数点后面部分)

  • 3 占位符%f既可以表示浮点数float,还可以表示整数int(默认保留6位小数)

  • 注:若想自主保留n位小数,可将其表示位%.nf

占位符的参数介绍

  • 个人感觉没有format的参数用着方便明了,所以此处不做详细试验python中format函数详细用法以及占位符的简单使用_第10张图片
  • 简单应用的例子python中format函数详细用法以及占位符的简单使用_第11张图片

占位符部分测试代码

# %s 字符串,整形,浮点型都支持
print("凶手是%s,他的战力是%s的%s倍"%("小明",666,3.1415926))
# %d 整形,浮点型都支持(表示整形的时候会去掉浮点数部分,且不会四舍五入)
print("凶手是%d,他的战力是%d的%d倍"%(999,666,3.1415926))
print("凶手是%d,他的战力是%d的%d倍"%(999,666,3.7415926))
# %f 整形,浮点型都支持(表示整形和浮点数都会默认保留6位小数,加上小数点之后限定保留小数的位数,会四舍五入)
print("凶手是%f,他的战力是%f的%f倍"%(9.99,666,3.7415926))
print("凶手是%.2f,他的战力是%.0f的%.1f倍"%(9.99,666,3.7815926))

参考资料

1 Python之format的用法详解_我想我很倔强的博客-CSDN博客_format用法
2 format()方法的基本使用 - 知乎 (zhihu.com)
3 Python 占位符的使用_星星升起的博客-CSDN博客_python占位符
4 Python学习笔记之占位符Python % - 沉默的赌徒 - 博客园 (cnblogs.com)

你可能感兴趣的:(python细节问题,python)