• 第二天——格式化输出(二)



    格式化输出


    现在需要我们录入我们身边好友的信息,格式如下:

    ------------ info of Alex Li ----------
                 Name  : Alex Li
                 Age   : 22
                 job   : Teacher 
                 Hobbie: girl
        ------------- end ----------------
    

    我们现在能想到的办法就是用一下方法:

    name = input('请输入姓名:')
    age = input('请输入年龄:')
    job = input('请输入职业:')
    hobby = input('请输入爱好:')
    a = '------------ info of Alex Li ----------'
    b = 'Name:'
    c = 'Age:'
    d = 'Job:'
    e = 'Hobby:'
    f = '------------- end ----------------'
    print(a+'
    '+b+name+'
    '+c+age+'
    '+d+job+'
    '+e+hobby+'
    '+f)
    
    # 运行结果
    ------------ info of Alex Li ----------
    Name:meet
    Age:18
    Job:it
    Hobby:3
    ------------- end ----------------
    

    这样写完全没有问题,但是会不会比较繁琐呢,有些大佬肯定会想这不都实现了吗,还逼叨逼什么啊,那是因为没有体验过格式化输出有多霸道,我们现在来体验下霸道的姿势

    %s — 字符串类型

    name = input('请输入姓名:')
    age = input('请输入年龄:')
    job = input('请输入职业:')
    hobby = input('请输入爱好:')
    msg = '''
    ------------ info of Alex Li ----------
    Name  : %s
    Age   : %s 
    job   : %s 
    Hobbie: %s 
    ------------- end ----------------
    
    '''
    print(msg%(name,age,job,hobby))
    

    我们但从代码的数量来看,这样就比那样的少,看到这里有细心的老铁们肯定在想%s这是啥玩意?

    % 是一个占位, 回想下我们小时候给朋友占位子的场景,是的这个就是占位.那s又是什么呢? s代码的字符串类型;

    %d|%i — 数字类型

    name = input('>>>')
    s1 = '1234%d'%int(name)
    s2 = '1234%i'%int(name)
    print(s1)
    print(s2)
    
    结果:
    >>>89
    123489
    123489
    # %d和%i这种格式化只能用数字来填补占位
    

    %% — 转义

    num = input('>>>')
    s= '目前学习进度:%s%%'%num
    print(s)
    
    结果:
    >>>80
    目前学习进度:80%
    
    # 如果我们字符串中想要显示单独的%就需要用来个%%来转义,不然程序会认为那是一个占位
    
    有志者,事竟成,破釜沉舟,百二秦关终属楚; 苦心人,天不负,卧薪尝胆,三千越甲可吞吴。 想到与得到中间还有两个字——做到。
  • 相关阅读:
    Java动态规划实现将数组拆分成相等的两部分
    动态规划解决hdu龟兔赛跑
    Eclipse上将maven项目部署到tomcat,本地tomcat下,webapps下,web-inf下lib下没有jar包决绝方案
    【转】spring IOC和AOP的理解
    Eclipse创建一个普通的java web项目
    linux服务器自动备份与删除postgres数据库数据
    开启Linux服务器vnc远程桌面详细步骤
    设计模式---JDK动态代理和CGLIB代理
    菜谱
    网络协议-dubbo协议
  • 原文地址:https://www.cnblogs.com/huoxc/p/12954702.html
Copyright © 2020-2023  润新知