python替换字符中的某个字符

要求在字符串里找到不同的,并用?代替,总结:方法1较快

s=['83BD 44FaFFFF','83BD 55FEFFFF','83BD 66FEFFFF']

first=s[0]
diff=[]
for s1 in s:
    for num in range(len(s1)):
        if first[num]!=s1[num] and num not in diff:
            diff.append(num)
#方法1
result=[]
for s1 in s:
    for num in diff:
        s1=s1[:num]+"?"+s1[num+1:]
    result.append(s1)
print(result)


#方法2
result=[]
for s1 in s:
    temp=list(s1)
    for num in diff:
        temp[num]="?"
    s1="".join(temp)
    result.append(s1)
print(result)
s="".join([chr(letter) for letter in range(65,91)])
s1=s[::-1]
s=s+"".join(x.lower() for x in s)+"9876543210"
s1=s1+"".join(x.lower() for x in s1)[::-1]+"9876543210"[::-1]
print(s)
print(s1)
ss=list(s)
ss1=list(s1)
dicts=dict(zip(ss,ss1))
print(dicts)
tt='aeidk'
tts=map(lambda x: dicts[x] if x in dicts.keys() else x, list(tt))
print("".join(list(tts)))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值