Xóa ký tự cuối cùng thứ hai khỏi chuỗi trong Python

Thao tác chuỗi là một trong những khía cạnh quan trọng nhất của Python. Bạn có thể thao tác với các chuỗi bằng kỹ thuật cắt, lặp qua các phần tử và phương thức chuỗi. Có thể sử dụng các phương thức như count(), find(), format(), upper(), index() và split(). Nhưng có thể xảy ra trường hợp bạn muốn xóa ký tự đầu hoặc ký tự cuối khỏi chuỗi.  

Xóa ký tự đầu tiên và cuối cùng khỏi chuỗi

Trong hướng dẫn này, bạn sẽ học cách xóa ký tự đầu tiên và ký tự cuối cùng khỏi chuỗi bằng chỉ mục

Trong Python, mỗi ký tự của chuỗi có chỉ mục của nó. Có hai loại chỉ mục trong python

  • Trái sang phải hoặc Chỉ số Tích cực
  • Phải sang trái hoặc Chỉ số phủ định

chuỗi

s

t

e

c

h

i

e

s

mục lục

0

1

2

3

4

5

6

7

mục lục

-số 8

-7

-6

-5

-4

-3

-2

-1

Bằng cách sử dụng chỉ mục chuỗi, chúng ta có thể xóa các ký tự cụ thể khỏi chuỗi

Xóa ký tự cuối cùng khỏi chuỗi Python

Ví dụ

# Python3 code to remove last character from string
# initializing test string
string='stechies'

# Remove last character
remove_last = string[:-1]

# Print remaining string
print(remove_last)

đầu ra

stechie

Giải trình

Trong mã này, chuỗi biến được khởi tạo với giá trị chuỗi “stechies”. Kỹ thuật cắt chuỗi được sử dụng trong dòng tiếp theo. Chuỗi [. -1] chỉ định tất cả các ký tự của chuỗi ngoại trừ ký tự cuối cùng. Chỉ số phủ định -1 chỉ định ký tự cuối cùng trong chuỗi “s”. Các [. -1] chỉ định ký tự ở chỉ mục 0 và đi lên chỉ mục trước chỉ mục cuối cùng

Câu lệnh cuối cùng của mã in ra giá trị của biến remove_last. đầu ra cuối cùng là

kỹ thuật viên

Python Xóa ký tự đầu tiên khỏi chuỗi

Ví dụ

# Python3 code to remove first character from string
# initializing test string
string='stechies'

# Remove first character
remove_first = string[1:]

# Print remaining string
print(remove_first)

đầu ra

techies

Giải trình

Ở đây, chuỗi biến được gán giá trị 'stechies'. Biến remove_first được gán giá trị cắt của chuỗi. Chuỗi mã [1. ] chỉ định tất cả các ký tự của chuỗi bắt đầu từ chỉ mục 1 cho đến chỉ mục cuối cùng. Do đó, khi chỉ mục bắt đầu từ 0, ký tự đầu tiên của chuỗi bị xóa. Các ký tự còn lại của chuỗi được in ra màn hình trong dòng mã tiếp theo

Do đó, đầu ra cuối cùng là

kỹ thuật viên

Phần kết luận

Khi đề cập đến các chỉ số để loại bỏ các ký tự khỏi chuỗi, hãy nhớ rằng chúng bắt đầu từ 0. Vì vậy, nếu bạn đề cập đến một [1. 5], chỉ số thứ hai sẽ được xem xét chứ không phải chỉ số thứ 6. Các ký tự nằm giữa hai chỉ số sẽ được in ra màn hình. Hơn nữa, nếu bạn đề cập đến một [1. ], các phần tử từ chỉ số thứ hai cho đến chỉ số cuối cùng sẽ được in ra. Các chỉ số tiêu cực cũng nên được sử dụng cẩn thận. Điều này là để đảm bảo rằng đầu ra cuối cùng là chính xác.   

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cách xóa n ký tự cuối cùng của một chuỗi trong Python

xem xét, chúng tôi có một chuỗi sau

str = "How are you"

Bây giờ, chúng tôi muốn xóa 3 ký tự cuối cùng you khỏi chuỗi trên

Xóa n ký tự cuối cùng

Chúng ta có thể xóa n ký tự cuối cùng của một chuỗi bằng cách sử dụng ký hiệu lát cắt [ ] với đối số là :-n

-n là số ký tự chúng ta cần loại bỏ từ cuối chuỗi

Đây là một ví dụ, xóa 3 ký tự cuối cùng khỏi chuỗi sau

str = "How are you"

modified = str[:-3]

print(modified)

đầu ra

"How are"

Ngoài ra, chúng ta cũng có thể sử dụng phương thức rstrip() bằng cách chuyển n ký tự cuối cùng làm đối số cho nó

Bài viết này trình bày một vấn đề như vậy về việc xóa ký tự thứ i khỏi chuỗi và nói về các giải pháp khả thi có thể được sử dụng để đạt được chúng bằng Python

Xóa ký tự thứ i khỏi chuỗi bằng phương thức gốc

Trong phương pháp này, người ta chỉ cần chạy một vòng lặp Python và nối thêm các ký tự khi chúng xuất hiện và tạo một chuỗi mới từ chuỗi hiện có trừ khi chỉ mục là i.  

Python3




test_str= "GeeksForGeeks"

 

# Removing char at pos 3

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
2

 

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
4_______7_______5
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
6
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
8
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
9

The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
1
The string after removal of i'th character : GeksForGeeks
2=
The string after removal of i'th character : GeksForGeeks
4
The string after removal of i'th character : GeksForGeeks
5

The string after removal of i'th character : GeksForGeeks
6
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
1

 

The string after removal of i'th character : GeksForGeeks
2

The string after removal of i'th character : GeksForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of i'th character : GeksForGeeks
5
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
7

đầu ra

The string after removal of i'th character : GeksForGeeks

Xóa ký tự thứ i khỏi chuỗi bằng cách sử dụng str. thay thế()

các str. replace() có thể được sử dụng để thực hiện tác vụ xóa vì chúng ta có thể thay thế chỉ mục cụ thể bằng char trống và do đó giải quyết được sự cố.  

Hạn chế. Hạn chế chính của phương pháp này là nó không thành công trong trường hợp có các bản sao trong một chuỗi khớp với char tại vị trí. Tôi. replace() thay thế tất cả các lần xuất hiện của một ký tự cụ thể và do đó sẽ thay thế tất cả các lần xuất hiện của tất cả các ký tự tại vị trí i. Đôi khi chúng ta vẫn có thể sử dụng chức năng này nếu ký tự thay thế xuất hiện lần đầu tiên trong chuỗi.  

Python3




The string after removal of i'th character : GeksForGeeks
8

test_str= "GeeksForGeeks"

 

# Removing char at pos 3

GeeksForGeeks
3

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
GeeksForGeeks
6
GeeksForGeeks
7_______34_______8

 

The string after removal of i'th character : GeksForGeeks
2

The string after removal of ith character: GeksForGeeks
0

The string after removal of i'th character : GeksForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of ith character: GeksForGeeks
3
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
7

 

The string after removal of ith character: GeksForGeeks
6

The string after removal of ith character: GeksForGeeks
7

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
GeeksForGeeks
6test_str1_______142_______2test_str3test_str4

 

The string after removal of i'th character : GeksForGeeks
2

test_str6

The string after removal of i'th character : GeksForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7test_str9
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
7

đầu ra

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks

Xóa ký tự thứ i khỏi chuỗi bằng cách sử dụng lát cắt + nối

Người ta có thể sử dụng cắt chuỗi và cắt chuỗi trước pos i và cắt sau pos i. Sau đó, sử dụng phép nối chuỗi của cả hai, ký tự thứ i có thể bị xóa khỏi chuỗi.  

Python3




The string after removal of i'th character : GeksForGeeks
8

test_str= "GeeksForGeeks"

 

# Removing char at pos 3

=7

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0= "GeeksForGeeks"0
The string after removal of i'th character : GeksForGeeks
4"GeeksForGeeks"2
The string after removal of i'th character : GeksForGeeks
0 "GeeksForGeeks"4"GeeksForGeeks"5"GeeksForGeeks"6

 

The string after removal of i'th character : GeksForGeeks
2

"GeeksForGeeks"8

The string after removal of i'th character : GeksForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of i'th character : GeksForGeeks
5
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
7

đầu ra

The string after removal of i'th character : GeksForGeeks

Xóa ký tự thứ i khỏi chuỗi bằng cách sử dụng str. tham gia () và hiểu danh sách

Trong phương pháp này, trước tiên, mỗi phần tử của chuỗi được chuyển đổi thành từng phần tử của danh sách, sau đó mỗi phần tử trong số chúng được nối để tạo thành một chuỗi ngoại trừ chỉ mục đã chỉ định.  

Python3




The string after removal of i'th character : GeksForGeeks
8

test_str= "GeeksForGeeks"

 

# Removing char at pos 3

# Removing char at pos 39

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
02_______7_______3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
4
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
5
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
6
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
8
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
09
The string after removal of i'th character : GeksForGeeks
1
The string after removal of i'th character : GeksForGeeks
2=
The string after removal of i'th character : GeksForGeeks
4
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
14

 

The string after removal of i'th character : GeksForGeeks
2

"GeeksForGeeks"8

The string after removal of i'th character : GeksForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
7
The string after removal of i'th character : GeksForGeeks
5
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
7

đầu ra.  

The string after removal of i'th character : GeksForGeeks

Xóa ký tự cụ thể khỏi chuỗi bằng translate()

Trong phương pháp này, chúng tôi đã xóa 123 khỏi Geeksforgeeks bằng cách sử dụng chuỗi. dịch().  

Python3




The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
22 =
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
24

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
25

The string after removal of i'th character : GeksForGeeks
3_______7_______7
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
22
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
29
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
30
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
31
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
32
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
4
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
5
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
36
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
37

đầu ra

GeeksForGeeks

Sử dụng đệ quy

Để sử dụng đệ quy để xóa ký tự thứ i khỏi một chuỗi, bạn có thể định nghĩa một hàm đệ quy nhận vào chuỗi và chỉ mục cần xóa làm đối số. Hàm có thể kiểm tra xem chỉ mục có bằng 0 hay không, trong trường hợp đó, hàm sẽ trả về chuỗi đã xóa ký tự đầu tiên. Nếu chỉ số không phải là 0, hàm có thể trả về ký tự đầu tiên của chuỗi được nối với kết quả của việc gọi lại hàm trên chuỗi có chỉ số giảm đi 1

Đây là một ví dụ về cách bạn có thể thực hiện phương pháp này

Python3




The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
38
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
39

The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
41

The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character : GeksForGeeks
1
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
4==
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
47
The string after removal of i'th character : GeksForGeeks
5

The string after removal of i'th character : GeksForGeeks
6
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
50
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
51test_str3"GeeksForGeeks"6

The string after removal of i'th character : GeksForGeeks
0

The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
56

The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
50
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
51
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
47"GeeksForGeeks"2
The string after removal of i'th character : GeksForGeeks
0
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
63test_str3
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
65
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
66 test_str3test_str4

 

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
69

test_str= "GeeksForGeeks"

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
0=
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
75
The string after removal of i'th character : GeksForGeeks
4test_str4

The string after removal of i'th character : GeksForGeeks
3_______7_______7
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
80
The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
81

The string after removal of i'th character( doesn't work) : GksForGks
The string after removal of i'th character(works) : GeekForGeeks
82

Đầu ra

The string after removal of ith character: GeksForGeeks

Xét về độ phức tạp về thời gian, cách tiếp cận này có độ phức tạp về thời gian là O(n) trong đó n là độ dài của chuỗi, bởi vì hàm thực hiện một lệnh gọi đệ quy duy nhất cho mỗi ký tự trong chuỗi

Về độ phức tạp của không gian, cách tiếp cận này có độ phức tạp của không gian là O(n) vì hàm thực hiện lệnh gọi đệ quy cho từng ký tự trong chuỗi và mỗi lệnh gọi yêu cầu không gian trên ngăn xếp cuộc gọi