문자열의 첫 문자를 제거


165

문자열의 첫 문자를 제거하고 싶습니다.

예를 들어, 내 문자열은 a로 시작 :하고 그만 제거하고 싶습니다. :문자열에서 제거해서는 안되는 여러 항목이 있습니다.

파이썬으로 코드를 작성 중입니다.

답변:


297

파이썬 2.x

s = ":dfa:sif:e"
print s[1:]

파이썬 3.x

s = ":dfa:sif:e"
print(s[1:])

두 지문

dfa:sif:e

13
이것이 허용되는 대답이라면 질문은 "문자열의 첫 번째 문자를 어떻게 제거합니까?"였습니다.
Spaceghost

1
@Spaceghost : OP에 "특히 첫 번째 문자를 제거하고 싶습니다"라고 표시되어 있습니다.
Sven Marnach

3
네가 맞아, 나는 단지 제목과 질문의 본문의 차이에 응답하고 있었다. :-)
Spaceghost

35

문제가 명확하지 않은 것 같습니다. "특정 위치에서 캐릭터"를 제거하고 특정 캐릭터를 제거하고 싶다고 말하십시오.

첫 번째 문자 만 제거해야하는 경우 다음을 수행하십시오.

s = ":dfa:sif:e"
fixed = s[1:]

특정 위치에서 캐릭터를 제거하려면 다음을 수행하십시오.

s = ":dfa:sif:e"
fixed = s[0:pos]+s[pos+1:]

특정 문자를 제거 해야하는 경우 ':'라고 말하면 문자열에서 처음 발견되면 다음을 수행하십시오.

s = ":dfa:sif:e"
fixed = ''.join(s.split(':', 1))

6
마지막 예를 더 쉽게 사용하여 수행 할 수 있습니다 s.replace(":", "", 1)-
스벤 Marnach을

25

문자열의 구조에 따라 다음을 사용할 수 있습니다 lstrip.

str = str.lstrip(':')

그러나 이것은 처음에 모든 콜론을 제거합니다. 즉, 가지고 있다면 ::foo결과는 다음과 같습니다 foo. 그러나 콜론으로 시작하지 않는 문자열이 있고 첫 번째 문자를 제거하지 않으려는 경우이 기능이 유용합니다.


2

문자 삭제 :

def del_char(string, indexes):

    'deletes all the indexes from the string and returns the new one'

    return ''.join((char for idx, char in enumerate(string) if idx not in indexes))

인덱스에있는 모든 문자를 삭제합니다. 당신은 당신의 경우에 그것을 사용할 수 있습니다del_char(your_string, [0])

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.