Python의 문자열에서 마지막 문자를 제거하는 다양한 방법을 확인하십시오.
목차
슬라이싱
Python은 양수 슬라이싱과 함께 음수 인덱스 슬라이싱을 지원합니다. 음수 인덱스는 -1에서 -(iterable_length)까지 시작합니다. iterable의 끝에서 요소를 가져오기 위해 음수 슬라이싱을 사용합니다.
- 인덱스 -1은 iterable에서 마지막 요소를 가져옵니다.
- 인덱스 -2는 iterable에서 두 번째 마지막 요소를 가져옵니다.
- 그리고 첫 번째 요소까지 계속됩니다.
예를 들어 보겠습니다.
name="koreantech.org" print(name[-1]) print(name[-len(name)])
위의 프로그램은 음수 인덱싱을 사용하여 문자열의 마지막 문자와 첫 문자를 인쇄합니다.
슬라이싱을 사용하여 문자열에서 마지막 요소를 어떻게 제거합니까? 그것은 단지 한 줄의 코드일 뿐입니다. 슬라이싱을 사용하여 문자열의 일부를 추출하는 방법을 알고 있습니다. 문자열에서 마지막 문자를 제거하기 위해 음수 인덱스와 동일한 것을 적용해 보겠습니다.
- 요소 앞의 처음부터 마지막까지 문자열을 슬라이스합니다.
buggy_name="GeekflareE" name = buggy_name[:-1] print(name)
위 코드의 두 번째 줄에 집중해 보겠습니다. 이것이 바로 코드의 매직 라인입니다. 전통적인 슬라이싱으로 시작 인덱스에서 마지막으로 하위 문자열을 추출하지만 슬라이싱은 지정된 두 번째 인덱스 요소를 무시하므로 하나를 추출합니다.
위의 코드를 실행하면 koreantech.org가 출력됩니다.
첫 번째 스트립
문자열 메소드 rstrip은 주어진 문자열의 오른쪽에서 문자를 제거합니다. 따라서 문자열의 마지막 요소를 제거하는 데 사용할 수 있습니다. 문자열에서 마지막 문자를 제거하기 위해 한 줄 이상의 코드를 작성할 필요가 없습니다.
- 스트립 메서드에 마지막 요소를 지정하면 마지막 문자를 제거하여 문자열을 반환합니다.
코드 스니펫을 살펴보겠습니다.
buggy_name="GeekflareE" name = buggy_name.rstrip(buggy_name[-1]) print(name)
스트립 메소드에 문자열의 마지막 문자를 지정했습니다. 문자열에서 마지막 문자를 제거하고 마지막 문자가 없는 복사본을 반환합니다.
실행하면 콘솔에 koreantech.org가 인쇄됩니다.
실제 예 – 마지막 단어 제거
예, 우리는 실제 예제에서 이전 섹션에 있는 것을 적용할 것입니다.
여러 줄의 텍스트가 포함된 파일이 있다고 가정해 보겠습니다. 그리고 파일의 각 줄에서 마지막 단어를 제거해야 합니다.
다음 단계에 따라 프로그램을 작성하십시오.
- random_text.txt라는 파일을 만들고 그 안에 몇 줄의 텍스트를 페이지에 넣습니다.
- 데이터 변수를 빈 문자열로 초기화합니다.
- 읽기 및 쓰기 모드에서 with 및 open 메소드를 사용하여 파일을 엽니다.
- readlines 메서드를 사용하여 파일의 내용을 읽습니다.
- 콘텐츠의 각 줄을 반복합니다.
- 단어에서 분할 방법을 사용하여 텍스트 줄을 분할합니다.
- 위의 방법 중 하나를 사용하여 마지막 단어를 제거합니다.
- 결과를 결합하여 문자열을 형성합니다.
- 결과를 데이터 변수에 추가합니다.
- 찾기 및 자르기 방법을 사용하여 파일에서 데이터를 제거합니다.
- write 메서드를 사용하여 파일에 최신 데이터를 씁니다.
파일에는 다음 데이터가 포함되어 있습니다.
This is a sample line for testing. LastWord. This is a sample line for testing. KillingIt. This is a sample line for testing. RandomWord. This is a sample line for testing. DeleteIt. This is a sample line for testing. RemovingIt.
아래 코드를 참조하십시오.
updated_data="" # opening the file with open('random_text.txt', 'r+') as file: # read the file content file_content = file.readlines() # iterate over the content for line in file_content: # removing last word updated_line=" ".join(line.split(' ')[:-1]) # appending data to the variable updated_data += f'{updated_line}n' # removing the old data file.seek(0) file.truncate() # writing the new data file.write(updated_data)
주어진 파일로 위의 코드를 실행하면 파일은 다음과 같이 업데이트된 데이터를 갖게 됩니다.
This is a sample line for testing. This is a sample line for testing. This is a sample line for testing. This is a sample line for testing. This is a sample line for testing.
튜토리얼을 즐겼기를 바랍니다.
즐거운 코딩 🙂
또한 Python에서 부분 문자열 작업을 확인하십시오.
기사를 재미있게 읽었습니까? 세상과 함께 나누는 건 어떨까요?