我需要返回给定的拼图,每个字母字符由HIDDEN字符替换.
HIDDEN = '^'
def blah(r):
r = HIDDEN * len(r)
return r
Run Code Online (Sandbox Code Playgroud)
此函数用于替换我需要的任何字符串,但问题特别要求替换每个ALPHABETIC字符.
所以,我不能有4或'或?隐藏被替换,因为他们不是字母字符.
我该怎么办呢?
一种方法:使用translate方法:
import string
table = string.maketrans(string.ascii_letters, '^'*len(string.ascii_letters))
def blah(r):
return r.translate(table)
Run Code Online (Sandbox Code Playgroud)
另一种方法:使用re.sub:
import re
def blah(r):
return re.sub(r'[a-zA-Z]', r'^', r)
Run Code Online (Sandbox Code Playgroud)