python分割提取字符串_Python 字符串操作(截取/替换/查找/分割)

python字符串连接

先介绍下效率比较低的,有些新手朋友就会犯这个错误:

a = ['a','b','c','d']

content = ''

for i in a:

content = content + i

print content

说下为什么效率会低呢?

原因:在循环连接字符串的时候,他每次连接一次,就要重新开辟空间,然后把字符串连接起来,再放入新的空间,再一次循环,又要开辟新的空间,把字符串连接起来放入新的空间,如此反复,内存操作比较频繁,每次都要计算内存空间,然后开辟内存空间,再释放内存空间,效率非常低,你也许操作比较少的数据的时候看不出来,感觉影响不大,但是你碰到操作数据量比较多的时候,这个方法就要退休了。

还是看看下面2个比较先进的方法把。

方法1: 用字符串的join方法:

a = ['a','b','c','d']

content = ''

content = ''.join(a)

print content

方法2: 用字符串的替换占位符替换

a = ['a','b','c','d']

content = ''

content = '%s%s%s%s' % tuple(a)

print content

原文

http://www.17jo.com/program/python/base/StringControl.html

Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。

# 例1:字符串截取

str = '12345678'

print str[0:1]

>> 1# 输出str位置0开始到位置1以前的字符

print str[1:6]

>> 23456# 输出str位置1开始到位置6以前的字符

num = 18

str = '0000' + str(num)# 合并字符串

print str[-5:]# 输出字符串右5位

>> 00018

Python 替换字符串使用 变量.replace("被替换的内容","替换后的内容"[,次数]),替换次数可以为空,即表示替换所有。要注意的是使用replace替换字符串后仅为临时变量,需重新赋值才能保存。

# 例2:字符串替换

str = 'akakak'

str = str.replace('k',' 8')# 将字符串里的k全部替换为8

print str

>> 'a8a8a8'# 输出结果

Python 查找字符串使用 变量.find("要查找的内容"[,开始位置,结束位置]),开始位置和结束位置,表示要查找的范围,为空则表示查找所有。查找到后会返回位置,位置从0开始算,如果每找到则返回-1。

# 例3:字符串查找

str = 'a,hello'

print str.find('hello')# 在字符串str里查找字符串hello

>> 2# 输出结果

Python 分割字符串使用 变量.split("分割标示符号"[分割次数]),分割次数表示分割最大次数,为空则分割所有。

例4:字符分割

str = 'a,b,c,d'

strlist = str.split(',')# 用逗号分割str字符串,并保存到列表

for value in strlist:# 循环输出列表值

print value

>> a# 输出结果

>> b

>> c

>> d

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2013-09-29 13:01

浏览 5755

评论

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值