format()函数可帮助我们替换或转换带有占位符的字符串,并在最终字符串中使用有效值。 字符串中的占位符用大括号定义,例如“ Welcome to Guru99 {}”.format(’value here’)。 format是字符串类的内置函数。
语法:
templatestring.format(val1, val2...)
参数
val1,val2 …:需要在给定的模板字符串中替换的值,该模板字符串具有大括号{}形式的占位符。 占位符可以是字符串,键/值对,整数,浮点数,字符等。
返回值:
它将返回最终的字符串,并替换有效值代替大括号中给出的占位符。
占位符
模板字符串中的占位符使用大括号表示。 占位符可以为空{},也可以具有例如{name}的变量,也可以具有数字索引,例如{0},{1}等。
字符串format()将扫描原始字符串以查找占位符。占位符可以是空的大括号{},字符串可以具有索引为0、1的占位符,例如{0},{1}等。
对于关键字参数,变量名称将出现在大括号内,例如{name},{age}。
第一个值将被第一个空花括号替换,然后是下一个。对于位置参数,索引将从0开始,依此类推。这些值将以逗号分隔的格式提供,第0个值将指向格式内的第一个值,依此类推。
对于关键字参数,即,当您在占位符中使用变量时,可以根据需要在格式中随意调整顺序,这个时候的顺序无关紧要,因为将根据format()中存在的变量名称替换值。
使用format,我们希望将大括号{}替换为字符串值。 该值提供给format(“ Guru99”)。 在执行时,大括号{}被Guru99替换。
print ("Welcome to {} tutorials".format("Guru99"))
Output:
Welcome to Guru99 tutorials
您还可以使用format()在字符串中插入数字。 该示例将说明如何用format内部的数字99替换空的占位符{}。
print ("Welcome to Guru{} Tutorials".format("99"))
Output:
Welcome to Guru99 Tutorials
也可以使用大括号内的变量,如下例所示。 变量在format()内部定义。 因此,在执行时,分配给变量的值将在原始字符串内替换。
例:
您可以在大括号内使用变量,例如{name} {num}。name和num变量的值在格式内可用,即format(name =“ Guru”,num =“ 99”)。 给name和num赋予的值将在{name}和{num}中替换。
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Output:
Welcome to Guru99 Tutorials
可以使用占位符内的索引替换这些值。 值将从format()中按顺序选择,如下例所示。
Example:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Output:
Welcome to Guru99 Tutorials
在此示例中,我们将使用多个空的占位符。
该示例中使用的字符串有多个空的占位符,每个占位符将引用format()内部的一个值。第一个值将替换为第一个占位符,依此类推。
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Output:
Guru99 is a new kind of learning experience
您已经看到,可以使用带有变量或索引的占位符为空。 也可以在占位符内应用某些格式。
这是格式列表
该类在format(c = MyClass())内部调用。对象c将引用类MyClass()中的属性和方法。
class MyClass:
msg1="Guru"
msg2="Tutorials"
print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Output:
Welcome to Guru99 Tutorials!
也可以在format()内部使用字典,如下例所示:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Output:
Welcome to Guru99 Tutorials!
在下面的示例中,将使用format()在占位符内添加空间。 要添加空间,必须在冒号(:)之后指定大括号内的空格数。 因此,占位符将看起来像{:5}。
print("I have {:5} dogs and {:5} cat".format(2,1))
Output:
I have 2 dogs and 1 cat
您也可以在占位符内提供索引,例如:{0:5}其中0表示格式内的第一个值。
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Output:
I have 2 dogs and 1 cat