在对字符串的处理上,有一个函数可以进行格式化的处理,有小伙伴知道是哪一个吗?小编直接告诉大家,format函数不光可以对字符串格式化,而且参数、位置上没有限制。有的小伙伴在构造字符串的下标问题上不会解决,接下来我们一起学习format来看看如何用它解决。
1.说明
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。使用format()来格式化字符串时,使用在字符串中使用{}作为占位符,占位符的内容将引用format()中的参数进行替换。可以是位置参数、命名参数或者兼而有之。
format 函数可以接受不限个参数,位置可以不按顺序。
2.语法:
format(value, format_spec)
替换字段的语法如下所示:
replacement_field ::= "{" [field_name] ["!" conversion] [":" format_spec] "}"
field_name ::= arg_name ("." attribute_name | "[" element_index "]")*
arg_name ::= [identifier | integer]
attribute_name ::= identifier
element_index ::= integer | index_string
index_string ::= <any source character except "]"> +
conversion ::= "r" | "s" | "a"
format_spec ::= <described in the next section>
3.实例
format函数主要是用来构造字符串,基本语法是通过 {} 符号操作,并且每一个 {} 都可以设置顺序,分别与format的参数顺序对应,如果没有设置{}下标,默认重0开始递增,示例代码如下:
str = "{}{}{}{}".format(5,6,7,8) # {} 下标没有设置,默认为 0 ,1,2,3
str1 = "{0}{1}{2}{3}".format(5,6,7,8)
str2 = "{0}{0}{2}{3}".format(5,6,7,8) # {} 根据下标索引取值
str3 = "{3}{0}{2}{1}".format(5,6,7,8)
print(str)
print(str1)
print(str2)
print(str3)
输出结果:
5678
5678
5578
8576
一看代码就明白,而且也不需要使用占位符。注意:format函数中的下标默认从0开始,对顺序没有限制。
以上就是我们在python中学习format函数得出的结论,看来要想解决实际运用问题,还是要把基础知识学牢固。
转载自:python学习网 https://www.py.cn/
发表评论
还没有评论,快来抢沙发吧!