• python之格式化输出(3种方式)


    python3.6后支持3种格式化输出方式,其中前两种为%-formatting及str.format ,第三种即为 f-string。

    1.%-formatting

    据传该格式化方法源于C..

    >>>username = input("请输入用户名:")
    >>>pwd = input("请输入密码:")
    >>>print("用户名为:%s,密码为:%s" %(username, pwd))
    用户名为:张三,密码为:123456

    %后字符含义:

    • %s:str,字符类型,用str()方法处理对象
    • %d(i):decimal,十进制数
    • %x: hex, 十六进制数
    • %f: float,浮点数
    • %r:类似于%s类型,用rper()方法处理对象,此外用%r打印时能够重现它所代表的对象 (拓展:Difference between __str__ and __repr__

    指定长度:

    •  %5d:右对齐,不足左边补空格
    •  %-5d:- 代表左对齐,不足右边默认补空格
    •  %05d:右对齐,不足左边补0      

     浮点数:

    • %f: 默认是输出6位有效数据, 会进行四舍五入
    • %.8f:指定小数点位数的输出,保留小数点后8位
    • %4.8f:4代表整个浮点数的长度,包括小数,只有当字符串的长度大于4位才起作用

    2.str.format

    例:格式化输出

    ------------ info of XXX ------------
    Name : XXX
    Age : 25
    job : XXXX
    Hobby: XXXXX
    ------------------ end ----------------

    2.1不带编号

    name = "XXX"
    age = 25
    job = "XXXX"
    hobby = "XXXXX"
    
    print("""
    ------------ info of {} ------------
    Name : {}
    Age : {}
    job : {}
    Hobby: {}
    ------------------ end ------------------
    """.format(name, name, age, job, hobby))

    2.2带编号

    name = "XXX"
    age = 25
    job = "XXXX"
    hobby = "XXXXX"
    
    print("""
    ------------ info of {0} ------------
    Name : {0}
    Age : {1}
    job : {2}
    Hobby: {3}
    ------------------ end ------------------
    """.format(name, age, job, hobby))

    2.3带关键字

    print("""
    ------------ info of {name} ------------
    Name : {name}
    Age : {age}
    job : {job}
    Hobby: {hobby}
    ------------------ end ------------------
    """.format(name="XXX", age=25, job="XXXX", hobby="XXXXX"))

    *2.4传入列表(元组)

    list = ["XXX", 25, "XXXX", "XXXXX"]
    print("""
    ------------ info of {0} ------------
    Name : {0}
    Age : {1}
    job : {2}
    Hobby: {3}
    ------------------ end ------------------
    """.format(*list))

    *2.5传入字典

    dic = {"name": "XXX",
           "age": 25,
           "job": "XXXX",
           "hobby": "XXXXX"}
    print("""
    ------------ info of {name} ------------
    Name : {name}
    Age : {age}
    job : {job}
    Hobby: {hobby}
    ------------------ end ------------------
    """.format(**dic))

    *2.6指定长度输出

      格式{:*>n}

    • >:右对齐
    • <:左对齐
    • ^:中间对齐
    • n:指定的长度
    print("左对齐是:{0:*<5},
    右对齐是:{1:*>5},
    居中的是:{2:*^5}".format("", "", ""))

    输出:

     

    3.f-string(python解释器3.6版本后可用)

    >>>name = "zhangsan"
    >>>age = 25
    >>>print(f"我的名字是{name},年龄是{age}")
    我的名字是zhangsan,年龄是25
  • 相关阅读:
    原来 是 需要的,
    传说中的 拉伸,
    date + 排序,
    两个 header,
    招财铃,负责模块,
    一个字母,
    一个词,
    vue+webpack静态资源路径引用
    Webstorm 的 Tab 键调整缩进值
    ES6常用语法
  • 原文地址:https://www.cnblogs.com/JackLi07/p/9832137.html
Copyright © 2020-2023  润新知