Python3--字符串拼接

字符串拼接:

方法1:+号(a+b+c)

In [2]: a,b,c = 'aaa','bbb','ccc'
In [3]: a + b + c
Out[3]: 'aaabbbccc'
In [4]: a + 'haha' + '*' + b + c
Out[4]: 'aaahaha*bbbccc'

方法2:格式化输出(%s:相当于占位符)

%s 格式化字符串
%d 格式化整数
%f 格式化小数
%c 格式化ASCII字符
%o 格式化八进制
%x 格式化十六进制
%e 用科学计数法格式化
-  用作左对齐
+ 用在正数前面显示加号
m.n  m是显示的最小长度,当m大于格式化位数时才起作用显示m位,n是代表小数的位数。  
转义字符:
    \n 换行   \a提示音  \b退格键    \t横向制表符 
自然字符串  r' '    (取消转义)

举例:
>>> '%s'%2
'2'
>>> '%s%s%s'%(1,2,3)# %s之间可以加任意字符,符号 '%s %s %s'%(1,2,3) 执行结果为:'1 2 3'
'123'
>>> '%d'%5#格式化整数
'5'
>>> '%f'%1.5#格式化小数,默认保留6位
'1.500000'
>>> '%.1f'%1.5# .1保留1位小数
'1.5'
>>> '%3.5f'%1.5#遵循后面的精度
'1.50000'
>>> '%+10.3f'%1.5 #显示‘+’(正)号
'    +1.500'
>>> '%c'%65 #格式化ASCII码
'A'
>>> '%c'%97
'a'
>>> '%o'%8 #格式化8进制
'10'
>>> '%x'%16 #格式化16进制
'10'
>>> '%x'%10
'a'
>>> '%x'%15
'f'
>>> '%e'%100 #格式化科学计数法
'1.000000e+02'

方法3:''.join()方法

#join是用来通过 某个字符串 拼接 一个可迭代对象的每个元素--->join(可迭代对象参数类型)
print('*'.join(name))   #将字符串中的每个元素都使用*号连接,执行结果:a*b*c*d*E*R*F*1*2*3,返回一个新的变量值
print('使用*号拼接后的name值:', name) #name字符串的内容未进行更改,执行结果:abcdERF123
nums = ['ybq', 'lhl', 'lsh']
print(','.join(nums))   #将列表转换为字符串,每个元素之间使用逗号连接,执行结果为:ybq,lhl,lsh
#另一种方法将列表转换为字符串
# nums = ['ybq', 'lhl', 'lsh']
# temp = ''
# for i in nums:
# temp = temp+i+','   #列表转换为字符串,强制类型转换,执行结果为:ybq,lhl,lsh
# print(temp.strip(','))

方法4:format()方法

>>> a = 'I'; b = 'Love' ;c = 'Python'
>>> '{} {} {}'.format(a,b,c) 
'I Love Python'
#{}中可以添加位置,即索引
>>> '{0} {1} {2}'.format(a,b,c)
'I Love Python'
>>> '{2} {0} {1}'.format(a,b,c)
'Python I Love'
>>> '{0[0]} {0[1]} {0[2]}'.format([a,b,c])#当只有一个元素时,此时的format中只是一个列表[],通过索引
'I Love Python'
>>> '{n1} {n2} {n3}'.format(n1=a,n2=b,n3=c)#指定位置,可以随意换位置
'I Love Python' 
>>> '{n1} {n3} {n2}'.format(n1=a,n2=b,n3=c)
'I Python Love'

了解:

(1)保留小数点后两位

>>> '{:.2f}'.format(12.333)#保留小数点后两位
'12.33
>>> '{a:.2f}'.format(a=12.333)
'12.33'
(2)百分比格式:
>>> '{:.2%}'.format(0.333)
'33.30%'
(3)进制转换(进制转换的时候用{0:进制})
>>> '{0:x}'.format(20)#转换为16进制
'14'
>>> '{0:o}'.format(20)#转换为8进制
'24'

(4)格式对齐

>>> '{a:<10}'.format(a=12.3)#左对齐,长度为10
'12.3      '
>>> '{a:>10}'.format(a=12.3)#右对齐...
'      12.3'
>>> '{a:^10}'.format(a=12.3)#两边对齐...
'   12.3   '
>>> '{a:0<10}'.format(a=12.3)#数字补x (填充右边, 宽度为4)
'12.3000000'

(5)转义和符号

>>> '{{ hello{0} }}'.format('python'  )#转义{和}符号
'{ hellopython }'
>>> f = 'hello{0}'.format
>>> f(' python')#这里可以把format当作一个函数来看
'hello python'

 来来来,我们喝点鸡汤羡慕

人生有两种痛苦,一种是努力的痛苦,一种是后悔的痛苦,而我认为后者比前者大千倍。

                                                                                                            ---凯丽·麦格尼格尔《自控力》




  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值