3分钟学会Python的format

Posted Harris-H

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3分钟学会Python的format相关的知识,希望对你有一定的参考价值。

3分钟学会Python的format

简介

format是用来格式化字符串的一个函数,主要通过花括号来识别替换字段,从而完成字符串的格式化

数字格式化

数字格式输出描述
3.1415926{:.2f}3.14保留小数点后两位
3.1415926{:+.2f}+3.14带符号保留小数点后两位
-1{:+.2f}-1.00带符号保留小数点后两位
2.71828{:.0f}3不带小数
5{:0>2d}05数字补零 (填充左边, 宽度为2)
5{:x<4d}5xxx数字补x (填充右边, 宽度为4)
10{:x<4d}10xx数字补x (填充右边, 宽度为4)
1000000{:,}1,000,000以逗号分隔的数字格式
0.25{:.2%}25.00%百分比格式
1000000000{:.2e}1.00e+09指数记法
13{:>10d}13右对齐 (默认, 宽度为10)
13{:<10d}13左对齐 (宽度为10)
13{:^10d}13中间对齐 (宽度为10)
11‘{:b}’.format(11)1011二进制
11‘{:d}’.format(11)11十进制
11‘{😮}’.format(11)13八进制
11‘{:x}’.format(11)b十六进制
11‘{:#x}’.format(11)0xb十六进制
11‘{:#X}’.format(11)0xB十六进制

各种用法集合

    print("{} {}".format("小明", "小张"))  # 花括号内为空 默认按照顺序填充
    print("{} {}".format("1", "2", "3"))  # 花括号可以少于参数的个数 但多于会报错
    print("{0} {1} {0}".format("herio", "harris"))  # 参数可以重复填充,可以用下标填充(从0开始)


    lst = ['aaa', 'bbb']
    print("{names[1]}  {names[0]}".format(names=lst))  # 可以用列表赋值为key

    dct = {"name": "小张", "age": "20"}
    print(" {keys[name]}  {keys[age]}".format(keys=dct))  # 字典赋值

    class Object:  # 类赋值
        name = "abc"
        age = 19


    print("{obj.age}   {obj.name} ".format(obj=Object))

    # 数字格式化
    number = 3.1415726
    print("{:.2f}".format(number), "{:+.2f}".format(number), "{:.2f}".format(-number)
          , "{:0>5d}".format(123), "{:0<5d}".format(123), "{:.>4d}".format(1)
          , "{:.2%}".format(0.76), "{:.0%}".format(0.123), "{:.2e}".format(123.543),
          "{:b}".format(7), "{:x}".format(15), "{:#x}".format(123))
    """
    3.14 +3.14 -3.14 00123 12300 ...1 76.00% 12% 1.24e+02 111 f 0x7b
    """
    fun = "{} is a good boy".format  # 作为一个函数使用
    print(fun("herio"))

    from datetime import datetime

    now = datetime.now()  # 格式化datetime
    print("{:%Y-%m-%d %X}".format(now))

参考文章

传送门1

传送门2

以上是关于3分钟学会Python的format的主要内容,如果未能解决你的问题,请参考以下文章

10分钟学会Python

10分钟学会Python函数基础知识

分分钟钟学会Python - 数据类型(列表元祖)

10分钟学会 Python 函数基础知识

3分钟,让你学会区分python中self与__init__?

[教程] 在 Y 分钟内学会 Python