# Remove char at specific index – python

I have a string that has two “0” (str) in it and I want to remove only the “0” (str) at index 4

I have tried calling .replace but obviously that removes all “0”, and I cannot find a function that will remove the char at position 4 for me.

Anyone have a hint for me?

## Here is Solutions:

We have many solutions to this problem, But we recommend you to use the first solution because it is tested & true solution that will 100% work for you.

### Solution 1

Use slicing, rebuilding the string minus the index you want to remove:

``````newstr = oldstr[:4] + oldstr[5:]
``````

### Solution 2

as a sidenote, `replace` doesn’t have to move all zeros. If you just want to remove the first specify `count` to 1:

``````'asd0asd0'.replace('0','',1)
``````

Out:

`'asdasd0'`

### Solution 3

This is my generic solution for any string `s` and any index `i`:

``````def remove_at(i, s):
return s[:i] + s[i+1:]
``````

### Solution 4

Another option, using list comprehension and join:

``````''.join([_str[i] for i in xrange(len(_str)) if i  != 4])
``````

### Solution 5

Slicing works (and is the preferred approach), but just an alternative if more operations are needed (but then converting to a list wouldn’t hurt anyway):

``````>>> a = '123456789'
>>> b = bytearray(a)
>>> del b
>>> b
bytearray(b'12356789')
>>> str(b)
'12356789'
``````

### Solution 6

``````rem = lambda x, unwanted : ''.join([ c for i, c in enumerate(x) if i != unwanted])
rem('1230004', 4)
'123004'
``````

### Solution 7

``````def remove_char(input_string, index):
first_part = input_string[:index]
second_part = input_string[index+1:]
return first_part + second_part

s = 'aababc'
index = 1
remove_char(s,index)
``````

zero-based indexing

### Solution 8

Try this code:

``````s = input()
a = int(input())
b = s.replace(s[a],'')
print(b)
``````

Note: Use and implement solution 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0