字符串拼接、格式化輸出、深淺復(fù)制
1、字符串拼接
a = 'hello'
b = 'python'
c = '!'
第一種:+ 號拼接
a + b + c
第二種: %s ,占位符
'%s %s %s' % (a, b, c)
第三種: ' '.join
' '.join(['a', 'b', 'c']) # 參數(shù)是可迭代對象
' '.join([1,2]) # 會報錯, 必須要是 str 型
第四種方法: .format() 跟 %s 相似,用到的是 {} 進(jìn)行占位
'{} {} {}'.format(a, b, c) # 默認(rèn)按照 0, 1, 2
'{1}[2]{0}'.format(a,b,c) #指定索引,后面是無序的
{} 里面可以指定對象名稱,后面通過賦值的方式給前面的對象相應(yīng)的值,后面是無序的
'{n1} {n2} {n3}'.format(n1=a, n2=b, n3=c) # 也可以賦值的形式
'{} {} {}'.format(n1=a, n2=b, n3=c) # 報錯
2、格式化輸出
'%s' % 'zhangge'
#'zhangge'
'%15s' % 'zhangge' # 輸出時按15個占位符
#' zhangge'
'%-8s' % 'aa' # 輸出時字符串左對齊
#'aa '
'%s' % 1 # 整數(shù)
#'1'
'%s' % 1.1 # 俘點數(shù)
#'1.1'
'%s' % [1, 2, 3, 4] # 列表
#'[1, 2, 3, 4]'
'%d' % 2
#'2'
'%d' % 1.1
#'1'
'%f' %10.2 # 默認(rèn)小數(shù)點后6位
# '10.200000'
'%.3f' % 10.2 # .3 保留小數(shù)點后3位
# '10.200'
'%10.3f' % 10.2 # 占10位輸出,小數(shù)點后保留3位
'%-10.3f' % 10.2
# '10.200 '
'%c' % 65 # ASCII
#'A'
'%c' % 97
#'a'
'%o' % 7 # 逢8進(jìn)1 八進(jìn)制
#'7'
'%o' % 8
#'10'
'%o' % 24
#'30'
# 1-9,A, B ,C ,D, E, F 十六進(jìn)制
'%x' % 9
#'9'
'%x' % 10
#'a'
'%x' % 11
#'b'
'%x' % 12
#'c'
'%x' % 13
#'d'
'%x' % 14
#'e'
'%x' % 15
#'f'
'%x' % 16
#'10'
'%x' % 17
#'11'
# %e 用科學(xué)計算法格式化
'%e ' % 10
#'1.000000e+01 ' 1*10 的1次方
'%e' % 100
#'1.000000e+02' 1*10 的2次方
+ 用在正數(shù)前面顯示加號
'%+d' % 1
#'+1'
'%+d' % -1 # 負(fù)數(shù)自動識別返回負(fù)數(shù)
#'-1'
\n 換行 \t 制表位 \a 提示音 \b 退格
s = 'www\nwww'
print(s)
#www
#www
s = 'www\twww'
print(s)
#www www
r ' ' 取消轉(zhuǎn)義
s = r'www\nwww'
print(s)
# www\nwww
深復(fù)制和淺復(fù)制
深復(fù)制和淺復(fù)制,只會在出現(xiàn)在嵌套列表的時候
淺復(fù)制
li = ['a','b']
l2 = ['c',li]
#輸出結(jié)果:
#['c', ['a', 'b']]
l3 = l2.copy()
#輸出結(jié)果:
#['c', ['a', 'b']]
id(l2),id(l3) # 新生產(chǎn)一個列表
#輸出結(jié)果:
#(49062728,49063432)
id(l3[1]),id(l2[1]) # 嵌套的列表 li 的 id 相同,沒有生成新的對象
#輸出結(jié)果:
#(48962696, 48962696)
淺復(fù)制,就是 l2.copy() ,嵌套的列表不會新建一個對象,都引用一個對象li
li= l2[li] = l3[li]
深復(fù)制
import copy # 導(dǎo)入模塊
l4 = copy.deepcopy(l2) # 將 l2 復(fù)制給 l4
id(l2[1]),id(l4[1]) # 求 l2 索引為1,l4索引為1 的 id 值
#(48962696, 48877064) id 不一樣
擴(kuò)展
'%s'%'asd'
'%r'%'asd' #如果是字符串,就多加一個引號 “ 'asd' ”
# “ 'asd' ”