python中字符串格式化格式化:第一种:%
经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx之类的字符串,而xxx的内容都是根据变量变化的
在Python中,采用的格式化方式用%实现,在字符串内部,%?代表此处的内容需要被变量填充
语法如下:格式:' xxx%s,"%d" '%('aaa', 123)
数据类型不同,%后面跟的字符不一样
%s 字符串 如果字符串中有% 就用%%
%d 整数
%f 浮点数 格式化整数和浮点数还可以指定整数与小数的位数 '%.2f'
%x 十六进制整数
%r 原始字符串 --注意和%s的区别
注意:如果不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串
在字符串外部,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略
举例说明:
#输出亲爱的xxx你好!你xx月的话费是xx,余额是xx
name = '小王'
mounth = 10
huefei = 99.8
balance = 10.02
print '亲爱的%s你好!你%d月的话费是%.2f,余额是%.2f'%(name,mounth,huefei,balance)
结果如下: 亲爱的小王你好!你10月的话费是99.80,余额是10.02
第二种:format:既可以用索引当成条件,也可以用变量名当成条件
格式化字符串的函数 str.format(),它增强了字符串格式化的功能。str中包含占位符,text中是要填充的内容
基本语法是通过 {} 和 : 来代替以前的 % 。
优点:format 函数可以接受不限个参数,位置可以不按顺序。
使用'{}'占位符
使用'{0}','{1}'形式的占位符
使用'{name}'形式的占位符
举例说明:使用'{name} # 设置指定位置
info= '亲爱的{user}你好!你{month}月的花费是{huafei},余额是{balance}'
info = info.format(user='xiaoming',month=10,huafei=50.0,balance=29.29)
print info
使用'{0}','{1}'形式的占位符:# 设置指定位置
info1= '亲爱的{0}你好!你{1}月的花费是{2},余额是{3}'
info1 = info1.format('xiaoming',2,50.0,29.29)
print info1
使用{}占位符:# 不设置指定位置,按默认顺序
a = "{} {}".format("hello", "world")
print a
练习题目:
2.拼接一个动态函数
def test_Case(self):
'测试用例描述'
execute_case(data)
其中用例编号,用例描述,execute_case方法参数 均为变量
如下:
case = 'case01'
desc = '测试用例一'
data = 'id=1'
a = """def test_{0}(self):
'{1}'
execute_case('{2}')"""
a1=a.format(case,desc,data)
print a1
版权声明:本文为博主原创文章,转载请附上博文链接!