Python 3 字符串 format( ) 方法


Python 3.8.5

语法格式:

str.format(*args, **kwargs)

描述:

  • 执行字符串格式化操作。
  • Python 2.6 开始,新增了一种格式化字符串的函数 str.format( ),它增强了字符串格式化的功能。
  • 调用此方法的字符串可以包含字符串字面值或者以花括号 {} 括起来的替换域。 每个替换域可以包含一个位置参数的数字索引,或者一个关键字参数的名称。 返回的字符串副本中每个替换域都会被替换为对应参数的字符串值。

参数说明:

  • *args —— 使用元组形式的参数。
  • **kwargs —— 使用字典形式的参数。

返回值:

  • 格式化后的字符串副本。

示例:

  • 使用 {}。
>>> a = '我爱一条{}'
>>> a.format('柴')
'我爱一条柴'>>> b = '给我{},我去{}'
>>> b.format('500 块', '买条柴')
'给我500 块,我去买条柴'
  • 使用 {} 和 位置参数。
>>> c = '你是{0},你爱{1},你是{0},铁齿金不换,诚实可靠小郎君!'
>>> c.format('王二麻子', '一条柴')
'你是王二麻子,你爱一条柴,你是王二麻子,铁齿金不换,诚实可靠小郎君!'
  • 使用 {} 和关键字参数名称。
>>> d = '''一二三四五,上山打{name},{name}不在家,打个{sha}!'''
>>> d.format(name= '老虎', sha= '大西瓜')
'一二三四五,上山打老虎,老虎不在家,打个大西瓜!'
  • 进制转换:

    • 我们可以再限定符中制定不同的字符对数字进行进制转换的格式化,进制对应的表格:
    • 字符含义:b - 二进制,c - Unicode 字符,o - 八进制数,d - 十进制整数,x - 十六进制数 - a 到 f 小写,X - 十六进制数 - A 到 F 大写。
>>> N = 105
>>> print('{:b}'.format(N))
1101001
>>> print('{:c}'.format(N))
i
>>> print('{:d}'.format(N))
105
>>> print('{:o}'.format(N))
151
>>> print('{:x}'.format(N))
69
>>> print('{:X}'.format(N))
69
  • 填充与对齐:

    • :  号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充,且填充常跟对齐一起使用;
    • ^ 、 < 、 >  分别是居中、左对齐、右对齐,后面带宽度。
>>> N = 105
>>> print('{:>8}'.format(N))105
>>> print('{:->8}'.format(N))
-----105
>>> print('{:-<8}'.format(N))
105-----
>>> print('{:-^8}'.format(N))
--105---
  • 精度:

    • :  号后面设置精度(以  .  开始加上精度),然后用  f  结束;
    • 若不是设置,默认为精度为 6,自动四舍五入,可带符号显示数字正负标志。
>>> N = 105.12345678901234567890
>>> M = -105.12345678901234567890>>> print('{:f}'.format(N))
105.123457
>>> print('{:.2f}'.format(N))
105.12
>>> print('{:+.2f}'.format(N))
+105.12
>>> print('{:+.2f}'.format(M))
-105.12
  • 转义:

    • 我们可以使用大括号 {} 来转义大括号。
>>> p = 'Python'
>>> S = 'I like {}, and {{0}}'.format(p)
>>> print(S)
I like Python, and {0}
  • 其他示例:
>>> "{} {}".format("hello", "world")             # 不设置索引值,按默认顺序
'hello world'>>> "{0} {1}".format("hello", "world")           # 设置索引值,位置必须从 0 开始
'hello world'>>> "{1} {0} {1}".format("hello", "world")       # 设置索引值
'world hello world'>>> a = '名字是:{name},年龄是:{age}'              # 设置参数
>>> a.format(age = 15, name = '大头')
'名字是:大头,年龄是:15'>>> site = {"name": "孤岛危机", "url": "www.gdwj.com"}     # 通过字典设置参数
>>> print("网站名:{name}, 地址 {url}".format(**site))
网站名:孤岛危机, 地址 www.gdwj.com>>> my_list = ['孤岛危机', 'www.gdwj.com']                 # 通过列表索引设置参数
>>> print("网站名:{0[0]}, 地址 {0[1]}".format(my_list))      # "0" 是必须的
网站名:孤岛危机, 地址 www.gdwj.com

注意:

  • 在 3.7 版更改: 当使用 n 类型格式化数字时,该函数在某些情况下会临时性地将 LC_CTYPE 区域设置为 LC_NUMERIC 区域。

Python 3 字符串 format( ) 方法相关推荐

  1. Python 3 字符串 maketrans( ) 方法

    Python 3 字符串 maketrans( ) 方法 Python 3.8.5 语法格式: static str.maketrans(x[, y[, z]]) 描述: 此静态方法返回一个可供 st ...

  2. Python 3 字符串 encode( ) 方法

    Python 3 字符串 encode( ) 方法 Python 3.8.5 语法格式: str.encode(encoding= 'UTF-8', errors= 'strict') 描述: enc ...

  3. Python 3 字符串 center( ) 方法

    Python 3 字符串 center( ) 方法 Python 3.8.5 语法格式: str.center(width[, fillchar]) ​描述: 返回一个指定宽度(width)和填充字符 ...

  4. Python 3 字符串 strip( ) 方法

    Python 3 字符串 strip( ) 方法 Python 3.8.5 语法格式: str.strip([chars]) 描述: 移除字符串首尾指定的字符或字符序列,默认为空格. 移除规则:最外侧 ...

  5. Python 3 字符串 ljust( ) 方法

    Python 3 字符串 ljust( ) 方法 Python 3.8.5 语法格式: str.ljust(width[, fillchar]) 描述: 返回宽度为 width 的字符串,原字符串在其 ...

  6. python的字符串一些方法

    python的字符串一些方法 python的字符串内建函数 字符串方法是从python1.6到2.0慢慢加进来的--它们也被加到了Jython中. 这些方法实现了string模块的大部分方法,如下表所 ...

  7. Python 3 字符串 rstrip( ) 方法(转载)

    Python 3 字符串 rstrip( ) 方法 Python 3.8.5 语法格式: str.rstrip([chars]) 描述: 移除字符串尾部的空格或指定字符串. 移除规则:尾部的字符的移除 ...

  8. Python字符串类型:字符串索引、字符串切片、字符串format()方法格式化、字符串操作符、字符串处理函数

    字符串:由0个或多个字符组成的有序序列sequence. 一.字符串表示方式:2类4种 由一对单引号或双引号表示,该方式仅用于表示单行字符串 由一对三单引号或三双引号,该方式可以表示多行字符串 如果希 ...

  9. python字符串format方法参数解释,一文秒懂!Python字符串格式化之format方法详解

    一文秒懂!Python字符串格式化之format方法详解 一文秒懂!Python字符串格式化之format方法详解 format是字符串内嵌的一个方法,用于格式化字符串.以大括号{}来标明被替换的字符 ...

最新文章

  1. 哎哟我去!betterzip居然支持这么多压缩格式!
  2. mysql 中 add2_计算器中的F,4,2,0,ADD2怎么调,MU键有什么用??急急急
  3. Spring AOP事务管理(使用切面把事务管理起来)
  4. 解决eclipse出现The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path
  5. 在本地电脑搭建一个网站 转自本文地址:http://www.fengzimo.com/1503.html 来源 疯子墨...
  6. CSS3---3.相对父元素的伪类
  7. 《跨界杂谈》华为印象(二):MTS
  8. Settings sync 配置与使用
  9. matlab提取电压基波分量,基于复系数陷波滤波器锁相环的电网正序分量检测
  10. 人物渲染篇(一) —— 基础卡通渲染 上
  11. SSL单向、双向认证
  12. 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。 现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素
  13. 谷歌学术用publish-or-perish来对引用量排序
  14. iframe例子 (
  15. 安全协议设计与分析-32学时 考试复习
  16. 推荐几个2023年比较好用的youtube转换器
  17. 欧莱雅的矿物质粉今天去买回来了
  18. 行摄无疆——李元大师谈风光摄影圆满结束
  19. 进程和线程上下文切换_编码人员:上下文切换对于计算机和关系而言都很难
  20. 【身份证识别】基于matlab GUI身份证号码识别【含Matlab源码 014期】

热门文章

  1. 使用matlab编程给qq或163邮箱等发邮件
  2. C++多态——静态多态与动态多态
  3. 10.1-10.31推荐文章汇总
  4. 2010年安防企业与事件盘点
  5. docker仓库Repository和harbor仓库
  6. 基于TensorFlow的MTCNN人脸检测算法(生成PNet的人脸关键点数据 代码注解)
  7. 艾永亮:服装业的投机主义,满足的到底是谁的需求?
  8. Express全系列教程之(十):jade模板引擎
  9. 秒杀系统的技术架构设计与实现
  10. PTA:寻找孪生素数