pythonreplace替换多个字符(python replace函数去除多个)
python如何替换指定位置的数据
python可以使用replace方法替换指定字符,根据关键字替换字符串内的所有内容。也可以自定义方法,用循环进行遍历处理
python字符串操作
字符串操作在各个计算机语言中都是比较常见的操作,下面我们对python的字符串操作做下简单介绍。
一、索引操作
字符串是由一些连续的字符组成,支持索引操作,索引位置从0开始,比如以下代码会输出’P‘字符:
二、截取子串
字符串也可以像列表那样给定起始与终止索引生成一个新的子串,比如以下代码会输出“Py”:
三、连接操作
多个字符串相加会生成一个新串,比如以下代码输出”Love Python“:
四、大小写转换
调用字符串的upper与lower方法会分别生成新的大写和小写的字符串,比如以下代码第一个输出:”I LOVE PYTHON“,第二个输出:”i love python“:
五、前后缀判断
调用字符串的startswith与endswith方法可以判断字符串是否以某个子串开关或者结尾,比如以下会分别打印出 ” python startswith py “ 和 ” python endswith on “:
六、查找与替换子串
调用find方法可以判断是否包含某个子串,比如以下代码会输出" python contains th" 和 " python doesn't contain he":
调用replace方法可以对字符串进行替换,比如要把"hello world"中的”hello“替换为”world“,以下代码会输出:”world world“
七、分隔字符串
如果我们要把一句话按空格分隔为一个一个的单词要怎么做呢,这时调用split方法即可,比如以下代码会把”hello world ni hao“转换为["hello","world","ni","hao"]:
八、清除前后字符
如果一个字符串前后有空白字符,我们需要去掉,你可以调用字符串的替换方法来做,但更简单的做法是调用strip方法,比如以下代码就会去掉两端的空白字符输出“hello python”:
九、大小写对换
如果我们需要把字符串中的小写转换为大写,大写转换为小写,那要怎么做呢,很简单,调用下swapcase就可以了,如以下代码会输出“ heLLO pYThON ”:
十、字符分类判断
有很多方法用来判断一个字符串是否属于某个分类,比如 isdigit判断是否是数字,isalpha判断是否是字母,isalnum判断是否是字母数字等,如下代码:
python 中怎么替换字符串
Python替换某个文本中的字符串,然后生成新的文本文档,代码如下:import osos.chdir('D:\\') # 跳到D盘if not os.path.exists('test1.txt'): # 看一下这个文件是否存在exit(-1) #不存在就退出lines = open('test1.txt').readlines() #打开文件,读入每一行fp = open(''test2.txt','w') #打开你要写得文件test2.txtfor s in lines:# replace是替换,write是写入fp.write( s.replace('love','hate').replace('yes','no')) fp.close() # 关闭文件
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的字符串替换问题
楼主搞生物的?很像碱基对啊。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如何替换字符串里的第N个字符
发给你一个函数:
def replaceString(string, num, replace):
string2 = ''
for i in range(len(string)):
if i == num:
string2 += replace
else:
string2 += string[i]
return string2
例子:
replaceString('abc', 1, 'a')
'aac'