2017-10-29-03字符串拼接、格式化输出、深浅复制笔记

字符串拼接、格式化输出、深浅复制

'''

序列的方法:

list   tuple  str

'''

字符串拼接

a = 'hello'

b = 'python'

c = '!'

第一种,+

a + ' ' + b +' ' +c

第二种,%s  ,占位符

'%s %s %s'%(a,b,c)

第三种,join

' '.join([a,b,c])   #可迭代对象

' '.join([1,2])  #  [1,2],必须要是str型

第四种方法:.format方式,%s 相似, 用到是 {} ,占位

'{} {} {}'.format(a,b,c)

'{}{}{}'.format(a,b,c)  

'{} {} {}'.format(a,b,c)   #默认按照 0,1,2

'{1} {2} {0}'.format(a,b,c) #也指定索引

{}里面可以指定对象名称,后面通过赋值的方式给前面的相应的值,后面是无序的

'{n1} {n2} {n3}'.format(n1=a,n2=b,n3=c)

'{} {} {}'.format(n1=a,n2=b,n3=c)



2.格式化输出

'%s'%'jianeng'

'%15s'%'jianeng'

'%-8s'%'aa'

'%s'%1

'%s'%1.1

'%s'%[1,2,3,4]

'%d'%2

'%d'%1.1

'%+d'%1

'%+d'%-1

'%f'%10.2

'%.3f'%10.2  #.3  保留3位小数

'%10.3f'%10.2  #总共10位,保留3位小数

'%-10.3f'%10.2

'%c'%65  #A

'%c'%97  #a

'%o'%7   #逢8 进1

'%o'%8   #10

'%o'%24  #30

1-9,A,B,C,D,E,F

'%x'%9

'%x'%10  #a

'%x'%11  #b

'%x'%12  #c

'%x'%13

'%x'%17  #11

%e 用科学计数法格式化

'%e'%10  #'1.000000e+01'   1*10^1

'%e'%100 #1*10^2

s = 'www\nwww'

s = 'www\twww'

'''

\n 换行   \a提示音  \b退格键    \t横向制表符

'''

print(r'www\nwww')  #取消转义



深复制和浅复制

'''

深复制和浅复制,只会出现在,嵌套列表的时候

'''

li = ['a','b']

l2 = ['c',li]

l3 = l2.copy()

id(l3),id(l2)  #新生产一个列表

id(l3[1]),id(l2[1])  #嵌套的列表,没有新生成

浅复制,就是 l2.copy() ,嵌套的列表不会,新建一个对象, li= l2[li] = l3[li]



深复制

import copy

l4 = copy.deepcopy(l2)

id(l2[1]),id(l4[1])



扩展

'%s'%'asd'

'%r'%'asd' #如果是字符串,就多加一个引号 “ 'asd'  ”



猜你喜欢

转载自blog.csdn.net/github_38970218/article/details/88543618
今日推荐