‘壹’ python怎么替换很多特定字符串为其他的字符串
用链式替换,示例如下:
str1='abcdef'
str2=str1.replace('a','1').replace('b','2')
print(str2)
#12cdef
2.用正则替换,示例如下:
importre
str3='abcdef'
str4=re.compile('(a|b)').sub('1',str1)
print(str4)
#11cdef
1 & 2结合应该能解决问题
‘贰’ Python3 - 字符串中的变量替换
创建一个内嵌变量的字符串,指定字符串替换掉变量。
Python并没有对在字符串中简单替换变量值提供直接的支持。 通过使用字符串的 format() 方法来解决这个问题。比如:
或者,如果被替换的变量能在变量域中找到, 那么可以结合使用 format_map() 和 vars() 。就像下面这样:
format() 和 format_map() 的一个缺陷就是它们并不能很好的处理变量缺失的情况,比如:
在python3中,有一种可读性更强,更方便的替代方法,在字符串前加 f ,需要被替代的变量外加花括号 {} ,其命名与替代变量的名称相同
多年以来由于Python缺乏对变量替换的内置支持而导致了各种不同的解决方案。在Python3中,推荐使用在字符串前加 f 的方法。
‘叁’ python 中怎么替换字符串
楼主搞生物的?很像碱基对啊。replace是替换整串字符串的,但是这里不方便,因为你把aa替换成tt后,就变成tttt,然后再替换,变为aaaa,没有达到效果,除非你用另外的字符代替,不过,这样就没有python的简洁优美了,所以这个问题用re最方便,下面是代码:
# coding=utf-8
import re
astr = 'aattccgg'
charmap = {'aa':'tt','tt':'aa','cc':'gg','gg':'cc'}
new = re.sub(r'aa|tt|cc|gg', lambda x: charmap[x.group(0)], astr)
print(new)#python2为print new
‘肆’ python中如何替换字符串
replace()实现字符串替换
使用案例
‘伍’ 如何用Python来进行查询和替换一个文本字符串
1、说明
可以使用find或者index来查询字符串,可以使用replace函数来替换字符串。
2、示例
1)查询
>>> 'abcdefg'.find('cde')
结果为2
'abcdefg'.find('acde')
结果为-1
'abcdefg'.index('cde')
结果为2
2)替换
'abcdefg'.replace('abc','cde')
结果为'cdedefg'
3、函数说明
1)find(...)
S.find(sub[, start[, end]]) -> int
返回S中找到substring sub的最低索引,使得sub包含在S [start:end]中。 可选的 参数start和end解释为切片表示法。
失败时返回-1。
2)index(...)
S.index(sub[, start[, end]]) -> int
与find函数类似,但是当未找到子字符串时引发ValueError。
3)replace(...)
S.replace(old, new[, count]) -> str
返回S的所有出现的子串的副本旧换新。 如果可选参数计数为给定,只有第一个计数出现被替换。
‘陆’ python文件替换指定字符串并输出位置
读文件的模式有很多种不一一列举,r+表示打开一个文件用于读写。文件指针将会放在文件的开头。
def readFile(path):
#R
with open(path,"r+") as f:
for line in f:
print(line)
f.close()
print("读文件完成")
path="D:\\tmp\\manim\\file\\1.txt"
readFile(path)
查找字符串位置,str.find(target) 返回起始点位置如果是-1则表示不存在
"123WWW".find("WWW")
文件指针偏移到指定位置
#文件路径,原字符串,要替换成的目标字符串
def replaceText(filePath,sourceText,targetText):
if(len(sourceText)!=len(targetText)):
raise Exception("原始字符串长度与目标字符串不符,容易覆盖有用信息", sourceText,targetText)
with open(filePath,'r+') as f:
line=f.readline()
index=0
# 遇到中间空行的可以自行观察并不是空字符串
while ( line!=""):
print(line)
# 本行内字符串所在位置
windex=line.find(sourceText)
if(windex!=-1):
print("windex={}".format(windex))
print("当前位置:{},替换内容起点:{}".format(f.tell(),index+windex))
f.seek(index+windex)
f.write(targetText)
# f.flush()
f.seek(index)
# 返回当前文件指针,应该是新一行的开始位置
index=f.tell()
line=f.readline()
f.close()
print("文件修改完毕")
‘柒’ python 字符串替换
str='aaaaaaaaaa'
ls=list(str)
ls[2]='0'
ls[3]='0'
ls[4]='0'
ls[5]='0'
ls[6]='0'
new_str=''.join(ls)#'aa00000aaa'
‘捌’ python 字符串替换求解
使用正则,
#!/usr/bin/python
#-*-coding:UTF-8-*-
importre
phone="2004-959-559#这是一个国外电话号码"
#删除字符串中的Python注释
num=re.sub(r'#.*$',"",phone)
print"电话号码是:",num
#删除非数字(-)的字符串
num=re.sub(r'D',"",phone)
print"电话号码是:",num
以上实例执行结果如下:
电话号码是: 2004-959-559
电话号码是 : 2004959559
‘玖’ Python正则表达式如何进行字符串替换
Python正则表达式在使用中会经常应用到字符串替换的代码。有很多人都不知道如何解决这个问题源码天空,下面的代码就告诉你其实这个问题无比的简单,希望你有所收获。1.替换所有匹配的子串用newstring替换subject中所有与正则表达式regex匹配的子串result, number = re.subn(regex, newstring, subject) 2.替换所有匹配的子串(使 用正则表达式对象)rereobj = re.compile(regex) result, number = reobj.subn(newstring, subject)字符串拆分 Python字符串拆分reresult = re.split(regex, subject) 字符串拆分(使用正则表示式对象)rereobj = re.compile(regex) result = reobj.split(subject)匹配 下面列出Python正则表达式的几种匹配用法:1.测试正则表达式是否 匹配字符串的全部或部分regex=ur"..." #正则表达式if re.search(regex, subject): do_something() else:do_anotherthing()2.测试正则表达式是否匹配整个字符串regex=ur"...\Z" #正则表达式末尾以\Z结束if re.match(regex, subject): do_something() else: do_anotherthing() 3. 创建一个匹配对象,然后通过该对象获得匹配细节regex=ur"..." #正则表达式match = re.search(regex, subject) if match: # match start: match.start() # match end (exclusive): match.end() # matched text: match.group() do_something() else: do_anotherthing() 以上就是对Python正则表达式在字符串替换中的具体介绍。