Python字符串格式化和函数参数学习(六):
字符串拼接
百分号拼接
传一个值
%代表标识,s代表在这个位置放一个字符串类型,后面传值也要有%开头根要传的值
msg = 'I am %s my hobby is xxxx' %'sk'
print(msg)
输出结果
I am sk my hobby is xxxx
传多个值
%s 可以接受数字列表等任何东西
%d是整型数字,只能接受数字
msg = 'I am %s my hobby is %s age %d' %('sk','AAA',12)
print(msg)
输出结果
I am sk my hobby is AAA age 12
%f:浮点数,%f默认小数点后保留6位不足六位0补齐
msg = 'percent %f' %99.1234
print(msg)
输出结果
percent 99.123400
%.2f:表示小数点后保留2位小数,
%%:显示百分号
msg = 'percent %.2f %%' %99.1234
print(msg)
输出结果
percent 99.12 %
拼接也可用字典的形式
msg = 'i am%(name)s age%(age)d' %{'name':'字典','age':20}
print(msg)
输出结果
i am字典 age20
sep:在print函数中,输出时逗号之间默认用空格隔开,也可以指定如下
print('root','x','o','A')
print('root','x','o','A',sep='~')
输出结果
root x o A
root~x~o~A
字符串格式化 format
方法一:format传的参数和前面是一一对应的,示例如下
不对应的话会报错
msg = 'i am {},age{},hobby{}'.format('小明',11,'篮球')
print(msg)
输出结果
i am 小明,age11,hobby篮球
方法二:format可以按索引取值示例如下
msg = 'i am {2},age{0},hobby{1}'.format(11,'篮球','小明')
print(msg)
``
输出结果
```python
i am 小明,age11,hobby篮球
方法三:
msg = 'i am {name},age{age},hobby{hobby}'.format(name='小明',age=19,hobby='篮球')
print(msg)
输出结果
i am 小明,age19,hobby篮球
方法四:format也可以加字典但是要加**,示例如下
msg = 'i am {name},age{age}'.format(**{'name':'小明','age':19})
print(msg)
输出结果
i am 小明,age19
方法五:format也可以加列表但是要加**,示例如下
tpl = "i am {:s}, age {:d}".format(*["seven", 18])
print(tpl)
#列表的方法也可以用如下形式表示 :s 相当于 %s
tpl1 = "i am {:s}, age {:d}".format('seven',18)
print(tpl1)
输出结果
i am seven, age 18
i am seven, age 18
方法六:
tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%},{}".format(15, 15, 15, 15, 15, 15.87623, 2)
# 二进制 八进制 十进制 十六进制小新 十六进制大写 :%转换百分比默认保留六位
print(tpl)
数据结果
numbers: 1111,17,15,f,F, 1587.623000%,2
参数组
函数中的参数位置参数和关键字参数
*args是代表列表 **kwargs代表字典
def test(x,*args):
print(x)
print(args)
print(args[0])
test(1,2,3,4,56,8)
以上参数1传给x, 2,3,4,56,8传给*args args[0]:表示按下角标取值
输出结果
1
(2, 3, 4, 56, 8)
2
**kwargs代表字典
def test(x,**kwargs):
print(x)
print(kwargs)
test(1,y=2,z=5)
输出结果
1
{'y': 2, 'z': 5}