Hướng dẫn python remove substring from string by index - python xóa chuỗi con khỏi chuỗi theo chỉ mục

Trong bài viết này, chúng tôi sẽ thảo luận về cách xóa các ký tự khỏi một chuỗi ở vị trí chỉ mục cụ thể hoặc trong một loạt các chỉ số nhất định.

Chúng ta có thể loại bỏ các ký tự khỏi chuỗi bằng cách cắt chuỗi thành các mảnh và sau đó tham gia lại các mảnh đó.

Chuỗi cắt

Trong các chuỗi Python là bất biến, chúng tôi không thể sửa đổi các đối tượng chuỗi. Do đó, khi chúng ta cắt một chuỗi, nó sẽ trả về một đối tượng chuỗi mới thay vì sửa đổi thì bản gốc.

Chúng ta có thể cắt một chuỗi bằng toán tử [] tức là.

stringObject[ start : stop : interval]

Nó trả về một đối tượng chuỗi mới chứa các phần của chuỗi đã cho, tức là nó chọn một phạm vi từ đầu đến Stop-1 với kích thước bước đã cho, tức là khoảng thời gian.start to stop-1 with given step size i.e. interval.

Quảng cáo

Hãy để sử dụng cắt lát để loại bỏ các ký tự khỏi chuỗi bằng chỉ mục.

Xóa một ký tự khỏi chuỗi ở chỉ mục cụ thể

Giả sử chúng ta có một đối tượng chuỗi, tức là.

strObj = "This is a sample string"

Hãy để loại bỏ ký tự tại chỉ mục 5 trong đối tượng chuỗi được tạo ở trên, tức là.index 5 in above created string object i.e.

index = 5
# Slice string to remove character at index 5
if len[strObj] > index:
    strObj = strObj[0 : index : ] + strObj[index + 1 : :]

Đầu ra:

Modified String :  This s a sample string

Nó đã xóa ký tự tại INDEX 5, tức là ‘I, từ‘ là trong chuỗi trên.‘i’ from ‘is’ in the above string.

Vì chúng tôi không thể sửa đổi các đối tượng chuỗi bất biến, vì vậy để mô phỏng hiệu ứng loại bỏ, chúng tôi chỉ chọn chuỗi con từ chỉ mục [0 đến index] & [index+1 đến cuối], sau đó hợp nhất các chuỗi phụ đó và được gán lại cho bản gốc Chuỗi. & nbsp; & nbsp; thủ thuật táo bạo 😉0 to index] & [index+1 to end], then merged those sub strings and assigned it back to the original string.  Cheeky trick 😉

Bây giờ, hãy để sử dụng cùng một thủ thuật để đạt được những thứ khác, tức là.

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

Chỉ cần chọn phạm vi từ chỉ mục 1 đến cuối và gán lại cho chuỗi gốc, tức là.

strObj = "This is a sample string"

# Slice string to remove first character
strObj = strObj[1 : : ]

print['Modified String : ' , strObj]

Đầu ra:

Modified String :  his is a sample string

Nó đã xóa ký tự tại INDEX 5, tức là ‘I, từ‘ là trong chuỗi trên.

Vì chúng tôi không thể sửa đổi các đối tượng chuỗi bất biến, vì vậy để mô phỏng hiệu ứng loại bỏ, chúng tôi chỉ chọn chuỗi con từ chỉ mục [0 đến index] & [index+1 đến cuối], sau đó hợp nhất các chuỗi phụ đó và được gán lại cho bản gốc Chuỗi. & nbsp; & nbsp; thủ thuật táo bạo 😉

strObj = "This is a sample string"

# Slice string to remove last character
strObj = strObj[:-1:]

Đầu ra:

Modified String :  This is a sample strin

Nó đã xóa ký tự tại INDEX 5, tức là ‘I, từ‘ là trong chuỗi trên.

Vì chúng tôi không thể sửa đổi các đối tượng chuỗi bất biến, vì vậy để mô phỏng hiệu ứng loại bỏ, chúng tôi chỉ chọn chuỗi con từ chỉ mục [0 đến index] & [index+1 đến cuối], sau đó hợp nhất các chuỗi phụ đó và được gán lại cho bản gốc Chuỗi. & nbsp; & nbsp; thủ thuật táo bạo 😉

Bây giờ, hãy để sử dụng cùng một thủ thuật để đạt được những thứ khác, tức là.

strObj = "This is a sample string"

start = 5
stop = 10
# Remove charactes from index 5 to 10
if len[strObj] > stop :
    strObj = strObj[0: start:] + strObj[stop + 1::]

Đầu ra:

Modified String :  This ample string

Nó đã xóa ký tự tại INDEX 5, tức là ‘I, từ‘ là trong chuỗi trên.

strObj = "This is a sample string"
0

Output:

Vì chúng tôi không thể sửa đổi các đối tượng chuỗi bất biến, vì vậy để mô phỏng hiệu ứng loại bỏ, chúng tôi chỉ chọn chuỗi con từ chỉ mục [0 đến index] & [index+1 đến cuối], sau đó hợp nhất các chuỗi phụ đó và được gán lại cho bản gốc Chuỗi. & nbsp; & nbsp; thủ thuật táo bạo 😉
 

37

Trong Python, phương thức .replace [] và hàm re.sub [] thường được sử dụng để làm sạch văn bản bằng cách loại bỏ các chuỗi hoặc chuỗi con hoặc thay thế chúng.
Learn more.

Làm thế nào để bạn xóa một ký tự ở một chỉ mục nhất định trong một chuỗi trong Python?

strObj = "This is a sample string"
2

Sử dụng cắt chuỗi để loại bỏ một ký tự khỏi chuỗi bằng chỉ mục, ví dụ: result = my_str [: idx] + my_str [idx + 1:]. Đụ thứ nhất trả về một phần của chuỗi trước chỉ mục được chỉ định và lát thứ hai - phần của chuỗi sau chỉ mục được chỉ định. Đã sao chép!not the best way to do it.

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm. I didn't mentioned that I need to manipulate a string size with length ~ 10^7. So it's important to care about efficiency.

Tôi đang loại bỏ một char khỏi chuỗi như thế này:

Tôi chắc chắn rằng đây không phải là cách tốt nhất để làm điều đó.Jun 28, 2016 at 4:02

Chỉnh sửa Tôi đã không đề cập rằng tôi cần điều khiển kích thước chuỗi với độ dài ~ 10^7. Vì vậy, điều quan trọng là phải quan tâm đến hiệu quả.Alvaro Silvino

Ai đó có thể giúp tôi. Cách làm pythonic nào để làm điều đó?11 gold badges49 silver badges79 bronze badges

5

Đã hỏi ngày 28 tháng 6 năm 2016 lúc 4:02

strObj = "This is a sample string"
3

Alvaro Silvinoalvaro Silvino

strObj = "This is a sample string"
4

9.02111 Huy hiệu vàng49 Huy hiệu bạc79 Huy hiệu đồng

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 4:05Jun 28, 2016 at 4:05

Nhà vật lý vật lý điênMad Physicist

101K24 Huy hiệu vàng164 Huy hiệu bạc248 Huy hiệu đồng24 gold badges164 silver badges248 bronze badges

11

Cắt lát là cách tiếp cận tốt nhất và dễ nhất mà tôi có thể nghĩ đến, đây là một số lựa chọn thay thế khác:

strObj = "This is a sample string"
5

Hãy nhớ rằng lập chỉ mục là không dựa trên.

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 4:14Jun 28, 2016 at 4:14

Nắm đấm sắtIron Fist

10,4K2 Huy hiệu vàng17 Huy hiệu bạc32 Huy hiệu đồng2 gold badges17 silver badges32 bronze badges

Bạn có thể thay thế ký tự chỉ mục bằng "".

strObj = "This is a sample string"
6

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 4:14Jun 28, 2016 at 4:14

min2bromin2bromin2bro

Nắm đấm sắt5 gold badges25 silver badges53 bronze badges

4

strObj = "This is a sample string"
7

10,4K2 Huy hiệu vàng17 Huy hiệu bạc32 Huy hiệu đồng

Bạn có thể thay thế ký tự chỉ mục bằng "".Jun 10, 2020 at 20:19

2

strObj = "This is a sample string"
8

4.2315 Huy hiệu vàng25 Huy hiệu bạc53 Huy hiệu ĐồngDec 4, 2019 at 21:43

0

Làm cách nào để loại bỏ một chuỗi con khỏi một chuỗi trong Python?

Trong Python, phương thức .replace [] và hàm re.sub [] thường được sử dụng để làm sạch văn bản bằng cách loại bỏ các chuỗi hoặc chuỗi con hoặc thay thế chúng.the . replace[] method and the re. sub[] function are often used to clean up text by removing strings or substrings or replacing them.

Làm thế nào để bạn xóa một ký tự ở một chỉ mục nhất định trong một chuỗi trong Python?

Sử dụng cắt chuỗi để loại bỏ một ký tự khỏi chuỗi bằng chỉ mục, ví dụ:result = my_str [: idx] + my_str [idx + 1:].Đụ thứ nhất trả về một phần của chuỗi trước chỉ mục được chỉ định và lát thứ hai - phần của chuỗi sau chỉ mục được chỉ định.Đã sao chép!, e.g. result = my_str[:idx] + my_str[idx+1:] . The first slice returns the part of the string before the specified index, and the second slice - the part of the string after the specified index. Copied!

Bài Viết Liên Quan

Chủ Đề