str.format()方法

用法

str.format()方法会返回一个新的字符串,在新的字符串中,原字符串的替换字段(大括号中和数字是预留的替换字段)被format方法中的参数代替。

替换字段被format方法中参数代替有一下集中形式-------------------------

按照位置

  1. ‘{0},{1}‘.format(‘kzc‘,18)         #按照替换字段中的数字带入format方法中的参数
  2. ‘kzc,18‘
  3. ‘{},{}‘.format(‘kzc‘,18)           #替换字段中没有数字就按照顺序带入format方法中的参数
  4. ‘kzc,18‘
  5. ‘{1},{0},{1}‘.format(‘kzc‘,18)
  6. ‘18,kzc,18‘

值得注意的是,如果格式化字符串包括大括号,就需要将他复写

  1. >>> "{{{0}}}".format("fsdg")
  2. ‘{fsdg}‘

按照字段名

  1. >>> "{who}今年已经{age}岁了".format(who="王尼玛",age=88)
  2. ‘王尼玛今年已经88岁了‘
  3. >>> "{who}今年已经{0}岁了".format(88,who="王尼玛")          #按照位置与按照字段名同时使用
  4. ‘王尼玛今年已经88岁了‘

按照索引

对列表

  1. >>> name=["王尼玛","叫兽小星","老湿"]
  2. >>> age=[23,34,45,567]
  3. >>> "{0[0]}和{0[1]}是好基友,他们已经搞基{1[3]}年了".format(name,age)
  4. ‘王尼玛和叫兽小星是好基友,他们已经搞基567年了‘

对字典

  1. >>> "{0[name]}已经{0[age]}岁了".format(stock)
  2. ‘王尼玛已经99岁了

按照对象

  1. >>> import sys
  2. >>> import math
  3. >>> "math.pi=={0.pi}sys.maxunicode=={1.maxunicode}".format(math,sys)
  4. ‘math.pi==3.141592653589793sys.maxunicode==1114111‘

格式规约符

字符串格式规约

格式限定符是通过{}中带:号带入的。

后面跟随的可选字符对是:

填充字符X对齐字符(<左对齐,^中间对齐,>右对齐)X可选最小宽度(如果指定最大宽度,就用句号隔开并再写一个整数)

  1. >>> "{0:-^10}".format("输入进去")
  2. ‘---输入进去---‘
  3. >>> "{0:.{1}}".format("66666666666666666",maxwidth)
  4. ‘666666666666‘

整数格式规约

格式限定符是通过{}中带:号带入的。

后面跟随的可选字符对是:

填充字符X对齐字符(<左对齐,^中间对齐,>右对齐,=用于在符号和数字之间进行填充)X"+"表示必须输出符号,"-"表示只输出负数符号," "表示正数输出空格,负数输出符号X可选#引导b(二进制)、o(八进制)、x(16进制)可选最小宽度(不能指定最大宽度)

    1. >>> "{0:b},{0:o},{0:x},{0:X}".format(999)
    2. ‘1111100111,1747,3e7,3E7‘
    3. >>> "{0:#b},{0:#o},{0:#x},{0:#X}".format(999)
    4. ‘0b1111100111,0o1747,0x3e7,0X3E7‘
    5. >>>
    6. >>> "{0:0= 4}".format(23)
    7. ‘ 023‘
    8. >>> "{0:0=-4}".format(23)
    9. ‘0023‘
时间: 2024-10-09 13:29:36

str.format()方法的相关文章

python的str.format方法

format方法被用于字符串的格式化输出. print('{0}+{1}={2}'.format(1,2,1+2)) #in 1+2=3 #out 可见字符串中大括号内的数字分别对应着format的几个参数. 若省略数字: print('{}+{}={}'.format(1,2,1+2)) #in 可以得到同样的输出结果.但是替换顺序默认按照[0],[1],[2]...进行. 若替换{0}和{1}: print('{1}+{0}={2}'.format(1,2,1+2)) #in 2+1=3 #

Python菜鸟晋级08----str.format()方法

用法 str.format()方法会返回一个新的字符串,在新的字符串中,原字符串的替换字段(大括号中和数字是预留的替换字段)被format方法中的参数代替. 替换字段被format方法中参数代替有一下集中形式------------------------- 按照位置 '{0},{1}'.format('kzc',18) #按照替换字段中的数字带入format方法中的参数 'kzc,18' '{},{}'.format('kzc',18) #替换字段中没有数字就按照顺序带入format方法中的参

Python——format()/str.format()函数

格式化输出,除了类似于C语言的格式化输出外,还有str.format()方法,Python内建的format()函数,允许用户将待输出值以参数的形式,调用format()函数,在Python交互式shell下,通过 help(format) 命令可以获取详细信息: 因此,若value是str类型的变量,则 format(value,format_spec) <==> value.format(format_spec) 当value不是str类型,例如 type(value) == int 时,

str.format() 格式化数字的多种方法

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % . format 函数可以接受不限个参数,位置可以不按顺序. 实例 >>>"{} {}".format("hello", "world") # 不设置指定位置,按默认顺序 'hello world' >>> "{0} {1}".for

测试String.Format方法

今天想使用String.Format,和平时的用法不一样. 直接上代码: [Test] public void TestMethod6() { string A = "A"; string B = "B"; string C = "C"; string D = "{0}"; String str = String.Format(D, A, B, C); Assert.AreEqual(str, "A");

Javascript format方法

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> </head> <body> <scrip

Python字符串str的方法使用

#!usr/bin/env python# -*-coding:utf-8-*-#字符串通常用双引号或单引号来表示:'123',"abc","字符串"#str字符串的常用方法有以下:字符串可以用于赋值临时变量s#友情提示以下全是python2.x版本演示,python3.x请在print(放入测试打印),例如:print(len(s))from string import maketranss3 = '123's2 = '   's1 = 'This Is \t C

Java中利用MessageFormat对象实现类似C# string.Format方法格式化

我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使得代码更为直观清楚. 最近使用java时候却java的string.Format与c#重点string.Format用法不一样,java中的string.format更类似于C语言的sprintf()方法 例如: String str=null; str=String.format("Hello,%

js 实现 C# 的 format 方法

2014-11-08 12:18:51 更新,修复原形链方法被当作关键词的bug,其实之前是想用全局关键词的,不过还是算了,array里有太多单词了.                                现在 length callee 关键词依然会被输出,以后修复,现在为了精简就将就着用了.2014-08-26 14:55:30 更新,修复 #5楼 冲动 兄弟提出的问题. 其实我根本不会 C# 只是看到人家写了个这种功能<js实现类似c#中的字符串处理方法format()>我看了下