python基础-04-字符串高级操作

字符串高级操作

python基础-字符串高级操作


1.字符串的拼接:

a = 'I'  ,    b = 'Love'  ,  c = 'Python'a,b ,c 中的字符串连成一句话。  
#第一种方法:用  +  号      
 >>> a+b+c
 'ILovePython' 

#第二种方法:格式化字符串  %s  
 >>> '%s %s %s' % (a , b ,c)
 'I Love Python'

#第三种方法:''.join()方式,注意括号里是要连接的可以是列表,元祖  
          ' '.join([a,b,c])  (注:''里面是连接后面各个字符串的字符)
>>> a.join(b)
'LIoIvIe'
>>> "".join((a,b,c))
'ILovePython'

#第四种方法:.format方式
#'{}{}{}'.format(a,b,c)    (注:{}里面可以填入与后面相对应的符号)
#format方法详解:
 '{}{}{}'.format(a,b,c)
>>> '{}{}{}'.format(a,b,c)
'ILovePython'

#当{}里面是空的时候,里面默认索引为0,1,2按format括号里的顺序依次填入
 '{1}{2}{0}'.format(a,b,c)
>>> "{0}{1}{2}".format(a,b,c)
'ILovePython'
>>> '{1}{2}{0}'.format(a,b,c)
'LovePythonI'

#当{}里面有索引值时,按前面的索引值将后面的每项依次填入
>>> '{n1}{n2}{n3}'.format(n1=a,n2=b,n3=c)
'ILovePython'
 {}里面必须指定对象名称,后面通过赋值的方式给前面的相应的值,后面是无序的

2.格式化输出

#%s 格式化字符串
-  用作左对齐

>>> "%15s"%a  #左边占用15个字符
'              I'
>>> "%-15s"%a  #右边占用15个字符
'I              '
>>> "%1s"%1.1
'1.1'

#%d 格式化整数
+ 用在正数前面显示加号
>>> "%d" %2.1  #相当于类型强制转换Int类型
'2'
>>> "%+d"%15 #加上+号
'+15'

#%f 格式化小数
#m.n  m是显示的最小长度,当m大于格式化位数时才起作用显示m位,n是代表小数的位数。
>>> "%f" %2.1  #小数点默认补6位
'2.100000'
>>> "%.2f" %2.1 #.2补两位小数
'2.10'
>>> "%10.2f" %2.1 # 10总的字符长度10位   .2保留两位小数
'      2.10'
>>> "%2.2f" %2.1  # 优先级:保留小数>字符长度
'2.10'

#%c 格式化ASCII字符
>>> "%c" %65
'A'

#bin 二进制格式化
>>> bin(4)
'0b100'
#%o 格式化八进制
>>> "%o"  %16
'20'

#%x 格式化十六进制
>>> "%x"  %16
'10'
>>> "%x" %15
'f'

#%e 用科学计数法格式化
>>> "%e" %10  #1*10的一次方
'1.000000e+01'

#%r 针对字符串会多加一个''(引号)
>>> "%r" %"abc"
"'abc'"

#转义字符
\n 换行  \a提示音  \b退格键    \t横向制表符 (相当于Tab键)

#取消转义   r' '    
>>> r"www\nwww"
'www\\nwww'

3.专辑:深复制和浅复制

#深复制和浅复制只会出现再嵌套列表中,嵌套之后可以通过索引值来取数

#1.浅复制
#浅复制,copy  嵌套的列表指向相同的内存地址
>>> t1=["a","b"]
>>> t2=["c",t1]
>>> id(t1)
62095768
>>> id(t2[1])   #和t1同一个对象
62095768

>>> t3=t2.copy()  #和t1同一个对象
>>> id(t3[1])
62095768

>>> t1.append("w")
>>> t2
['c', ['a', 'b', 'w']]
>>> t3
['c', ['a', 'b', 'w']]

>>> id(t2)  #t2和t3不同对象,嵌套的列表指向相同的内存地址
62095528
>>> id(t3)
62096008

2.深复制
>>> import copy
>>> t4=copy.deepcopy(t2)
>>> id(t2),id(t4)
(62095528, 15453360)

>>> id(t2[1]),id(t4[1])  #嵌套的列表内存地址改变
(62095768, 62095408)
  • 发表于 2017-11-08 20:54
  • 阅读 ( 1693 )
  • 分类:python

0 条评论

请先 登录 后评论
不写代码的码农
doublechina

IT

31 篇文章

作家榜 »

  1. 威猛的小站长 124 文章
  2. Jonny 65 文章
  3. 江南烟雨 36 文章
  4. - Nightmare 33 文章
  5. doublechina 31 文章
  6. HJ社区-肖峰 29 文章
  7. 伪摄影 22 文章
  8. Alan 14 文章