• 零基础学python-7.6 字符串格式化表达式


    字符串格式化允许在一个单个的步骤中对一个字符串执行多个特定类型的替换

    特别是给用户提示的时候,格式化非常方便

    实现方法:

    1.格式化表达式,类似于c语音的printf

    在表达式中,我们使用%二进制操作符

    >>> print('this is %d %s bird' % (1,'dead'))
    this is 1 dead bird

    举上面的例子说明(注意我们下面所说的%,都是以字符串和元组中间的那个为准)

    在%的左边放置一个字符串,字符串里面放置了一个或者多个使用%开头的嵌入对象

    在%的右边放入一个(或多个,嵌入元组当中)对象,这些对象将插入到左边的转换目标位置上

    >>> name='ray'
    >>> 'my name is %s' % name
    'my name is ray'
    >>> '%d %s %d you' % (1,'spam',4)
    '1 spam 4 you'
    >>> '%s---%s---%s' % (42,3.14,[1,2,3])
    '42---3.14---[1, 2, 3]'
    >>> 

    当插入多个对象时,需要把他们放到一个元组里面


    2.高级格式化表达式

    字符串格式化代码列表

    代码 意义
    s 字符串(或者任何对象)
    r s,但是用repr,而不是str
    c 字符
    d 十进制整数
    i 整数
    u 无号整数
    o 八进制整数
    x 十六进制整数
    X x,但打印大写
    e 浮点指数
    E e,但打印大写
    f 浮点十进制
    F 浮点十进制
    g 浮点e或f
    G 浮点e或f
    % 常量%

    %[(name)][flags][width][.pression]typecode

    例子

    >>> x=1234
    >>> res='integers:...%d...%-6d...%06d' % (x,x,x)
    >>> res
    'integers:...1234...1234  ...001234'
    >>> 

    %e,%f,%g对于浮点数的打印是有所区别的

    >>> x=1.23456789
    >>> x
    1.23456789
    >>> '%e|%f|%g' % (x,x,x)
    '1.234568e+00|1.234568|1.23457'
    >>> 

    3.基于字典的格式化表达式

    >>> 'my name is %(name)s,my age is %(age)d' % {'name':'ray','age':30}
    'my name is ray,my age is 30'
    >>> 

    说白了就是给每个替换位置命名,这样代码看起来更加明了


    就说到这里,谢谢大家

    ------------------------------------------------------------------

    点击跳转零基础学python-目录


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    jvm调试相关:jmap失效下找到alternatives神器
    作业2:java内存模型图示
    Python脚本:Linux自动化执行Python脚本
    Nodejs:单线程为什么能支持高并发?
    作业1:java虚拟机内存模型图示
    SpringBoot中获取spring.profiles.active的值
    线程中使用注解出现空指针如何解决?
    java7:核心技术与最佳实践读书笔记——对象生命周期
    java7:核心技术与最佳实践读书笔记——类加载
    虚拟机上不了网啦
  • 原文地址:https://www.cnblogs.com/raylee2007/p/4774488.html
Copyright © 2020-2023  润新知