Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
307 views
in Technique[技术] by (71.8m points)

python - Using str.replace in a for loop

I am working on an assignment that is asking me to change the below code so that line 4 uses str.isalnum and lines 5-7 become uses only one line using str.replace.

s = 'p55w-r@d'
result = ''
for c in s:
    if(c not in 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'):
        result += '*'
    else:
        result += c
print(result)

This is what I have so far:

s = 'p55w-r@d'
result = ''
for c in s:
    if(c.isalnum() == False):
        result += c.replace(c,'*')
print(result)

The output for the second code needs to equal the output of code 1:

p55w*r*d
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Just add the else part and you are done :

s = 'p55w-r@d'
result = ''
for c in s:
    if(c.isalnum() == False):
        result += c.replace(c,'*')
    else:
        result +=c 
print(result)

p55w*r*d

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...