Skip to content Skip to sidebar Skip to footer

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' r

Solution 1:

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

Solution 2:

I have idea how to make same in 2 strings:

s = 'p55w-r@d'print(''.join(map(lambda x: x if x.isalnum() else'*', s)))

OUT:

p55w*r*d

Solution 3:

The closest thing to meet your assignment's requirements while still making sense would be:

s = 'p55w-r@d'
result = s  # Note the change herefor c inset(s):  # set(..) is not strictly necessary, but avoids repeated charsif not c.isalnum():
        result = result.replace(c, '*')

Solution 4:

you can use if else after equal.

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

Post a Comment for "Using Str.replace In A For Loop"