开发者

Python格式化输出的几种汇总

开发者 https://www.devze.com 2023-02-15 09:44 出处:网络 作者: IT_狂奔者
目录python中三种格式化输出的方式第一种第二种  第三种 format方法位置映射关键字映射元素访问填充对齐精度设置总结Python中三种格式化输出的方式
目录
  • python中三种格式化输出的方式
    • 第一种
    • 第二种  
    • 第三种 
  • format方法
    • 位置映射
    • 关键字映射
    • 元素访问
    • 填充对齐
    • 精度设置
  • 总结

    Python中三种格式化输出的方式

    比如要求用户输入用户名和年龄,然后打印如下格式:

    a = "------------- info -------------"

    b = "name:"

    c = "age:"

    d = "job:"

    e = "-------------- end -------------"

    name = input("name")

    age = input("age")

    job = input("job")

    print(a + "\n" + b + name + "\n" + c + age + "\n"+ d + job + "\n" +e)

    那么这样实现特别繁琐,代码不简洁,而且繁琐,那么这时候就要用到字符串的格式化输出:

    第一种

    利用%(称之为:占位符)格式化输出:

    占位符很简单:如 %s(针对所有数据类型) %d(仅仅针对整数类型)

    s = """ ------------- info -------------

    name:%s

    age:%s

    job:%s

    -------------- end -------------

    """

    name = input("name:")

    age = int(input("age:"))

    job = input("job:")

    print(s%(name,age,job))

    这样就没有上面看起来那么冗余

    百分比

    print("这部<<%(name)s>>电视剧,我已经看了85%%" % {"name": "特种兵"})

    输出:

    这部<<特种兵>>电视剧,我已经看了85%

    注:一旦字符串格式化中出现百分比的显示,一定要加两个%%以实现输出一个%.

    第二种  

    f-String格式化(第二种格式化输出)(3.6版本,具有向上兼容)建议使用使打印更加好看

    print(f"你是谁{任意的变量,和参数}")

    print(f"{alxe * 2}")#可以任意的运算

    name = 'Bertram'

    age = 3

    print(f"hello,{name},you are {age}")

    #输出:

    hello,Bertram,you are 30

    第三种 

    利用format格式化输出format格式化(第三种格式化输出)(3.4版本,具有向上兼容),建议使用

    比较简单,实用

    f或者F都可以哦

    name = input("请输入您的姓名:")

    QQ = int(input("请输入您的qq:"))

    phone = input("请输入您的电话:")

    addr=input("请输入您的地址:")

    print('姓名:{}  年龄:{}岁'.format(name,25))

    print('QQ:{}'.format(QQ))

    print('手机号:{}'.format(phone))

    print('地址:{}'.format(addr))

    #输出:

    姓名:Bertram  年龄:25岁

    QQ:123425212

    手机号:010-2418424开发者_开发学习1

    地址:北京

    name = 'Bertram'

    age = 30

    print("hello,{1},you apythonre {0}".format(age,name))#索引是根据format后的数据进行的哦

    #输出:

    hello,Bertram,you are 30

    name = '杰'

    age =26

    print("hello,{name},you are {age}.".format(age=age, name=name))

    #输出:

    hello,杰,you are 26.

    format方法

    位置映射

    Python格式化输出的几种汇总

    实例:

    printphp("{}:{}".format('192.168.0.100',8888))
    #192.168.0.100:8888

    关键字映射

    Python格式化输出的几种汇总

    实例:

    print("{0[0]}.{0[1]}".format(('baidu','com')))
    #baidu.com 

    元素访问

    Python格式化输出的几种汇总

    Python格式化输出的几种汇总

    实例:

    print("{0[0]}.{0[javascript1]}".format(('baidu','com')))
    #baidu.com 
    

    填充对齐

    ^、<、>分别是居中、左对齐、右对齐

    Python格式化输出的几种汇总

    实例:

    print("{0}*{1}={2:0>2}".format(3,2,2*3))
    #3*2=06
     
    print("{:*^30}".format('centered'))
    #***********centered*********** 
    

    九九乘法表

    for i in range(1, 10):
        for j in range(1, 10):
            if j <= i:
                print(f'{j}*{i}={i * j}', end="\t")
        print()
    '''
    1*1=1	
    1*2=2	2*2=4	
    1*3=3	2*3=6	3*3=9	
    1*4=4	2*4=8	3*4=12	4*4=IYshYShSos16	
    1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
    1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
    1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
    1*8=8	编程客栈2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
    1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	
    '''
    

    精度设置

    Python格式化输出的几种汇总

    实例

    print("{:.3f}".format(2.1415))
    #2.142
    print("{:.10f}".format(3.1415))
    #3.1415000000
    

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号