Python快速学习第二天

第二天

 

字符串的使用

1、字符串格式化



 

a)    %s格式化为字符串

 

>>> format ="Hello, %s. %s enough for ya?"

>>> values =('world', 'Hot') 

>>> print format %values

Hello, world. Hot enough forya?

 

b)    %f 格式化为实数(浮点数)

 

>>> format="Piwith three decimals:  %.3f"

>>> from mathimport pi

>>> print format %pi

 

c)    模板字符串

1.    单词替换(用x替换字符串中的$x)

>>> from stringimport Template

>>>s=Template('$x,love  $x!')

>>>s.substitute(x='programing')

'programing,love  programing

 

2.    替换单词的一部分

 

>>> from stringimport Template

>>>s=Template("I Love ${x}siyuan")

>>>s.substitute(x='Zhou')

'I Love Zhousiyuan'

  

3.    用$$插入美元符号

 

>>> from stringimport Template

>>>s=Template('Make $$ selling $x!')

>>>s.substitute(x='tanggao')

'Make $ selling tanggao!'

 

4.    使用字典变量提供键值对

 

>>> from stringimport Template

>>> s=Template('A$thing must never $action')

>>> d={}

>>>d['thing']='gentleman'

>>>d['action']='show his socks'

>>> s.substitute(d)

'A gentleman must never showhis socks'

 

d)右操作数为元祖

 

>>> '%s plus %sequals %s' %(1,1,2)

'1 plus 1 equals 2'

 

 

e)  用*作为字段宽度或精度

      

>>> '%.*s'  % (5,'Guido van Rossum')

'Guido'

 

 

2、简单转换

 

>>> 'Price of eggs:$%d' % 43

'Price of eggs: $43'

>>> 'Price of eggs:$%x' % 43

'Price of eggs: $2b'

>>> 'pi: %f...' %pi

'pi: 3.141593...'

>>> 'pi: %i..' %pi

'pi: 3..'

>>> 'using repr:%r' %42l

'using repr: 42L'

 

  

  3、 字段宽度和精度

 

>>> '%-10.2f' % pi

'3.14     '

>>> '%-10f' % pi

'3.141593 '

>>> '%10.2f' % pi

'     3.14'

>>> '%.5s' % 'tanggao is good'

'tangg'

 

 

 

2、 符号,对其和0填充

 

>>>'%010.2f' % pi

'0000003.14'

>>>'%-10.2f' % pi

'3.14      '

>>>ptint()

>>>print('%+5d' % 10)+'\n' +('%+5d' % -10)

  +10

  -10

 

3、 代码示例

 

  



 

  

字符串方法

  常用:

1、find

查找字符串,查到返回子串所在位置的最左端索引


 

2、join

往队列中添加元素,但是必须是字符串

>>> seq=[1,2,3,4,5]

>>> sep='+'

>>> sep.join(seq)

Traceback (most recent calllast):

  File "<stdin>", line 1, in<module>

TypeError: sequence item 0:expected string, int found

>>>seq=['1','2','3','4','5']

>>> sep='+'

>>> sep.join(seq)

'1+2+3+4+5'

>>> dirs='', 'usr','bin' ,'env'

>>>"/".join(dirs)

'/usr/bin/env'

>>> print'C:'+'\\'.join(dirs)

C:\usr\bin\env

 

3、lower

返回字符串的小写

>>> 'TANGGAO ISGOOD'.lower()

'tanggao is good'

    

  

 

4、replace

字符串的替换

>>> 'Pig Dog  Cat'.replace('Pig','chicken')

'chicken Dog  Cat'

>>> 

5、split

字符串的分割

>>>'1+2+3+4+5'.split('+')

['1', '2', '3', '4', '5']

>>> 

 

6、strip

去除字符串两侧的空格


7、translate


translate方法和replace方法一样,可以替换字符串中的某些部分,但是和前者不同的是,translate方法只处理单个字符,它的优势在于可以同时进行多个替换,有些时候比replace效率高得多。

在使用translate转换之前,需要先完成一张转换表。转换表中是以某字符替换某字符的对应关系。因为这个表(事实上是字符串)有多达256个项目,所以可以使用string模块里面的maketrans函数就行。

Maketrans函数接受两个参数:两个等长的字符串,表示第一个字符串中的每个字符被第二个字符串中相同位置的字符串替换。

 

>>> from string import maketrans

>>>table=maketrans("","")

>>>table=maketrans("cs","kz")

>>> len(table)

256

>>> table[97:123]

'abkdefghijklmnopqrztuvwxyz'

>>>maketrans("","")[97:123]

'abcdefghijklmnopqrstuvwxyz'

>>> 'this is an incrediabletest'.translate(table)

'thiz iz an inkrediable tezt'


 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值