Việc xóa các ký tự khỏi chuỗi rất hữu ích nếu bạn đang làm việc với đầu vào do người dùng tạo và cần xóa dữ liệu của mình cũng như xóa các ký tự không mong muốn
Cụ thể, bạn có thể chỉ cần xóa một lần xuất hiện của một ký tự hoặc thậm chí tất cả các lần xuất hiện của một ký tự khỏi một chuỗi
Python cung cấp nhiều cách để giúp bạn làm điều này
Hai trong số những cách phổ biến nhất để xóa ký tự khỏi chuỗi trong Python là
- sử dụng phương pháp chuỗi my_string = "Hi! I! Love! Python!" 0
- sử dụng phương pháp chuỗi my_string = "Hi! I! Love! Python!" 1
Khi sử dụng một trong hai phương thức, bạn có thể chỉ định (các) ký tự bạn muốn xóa khỏi chuỗi
Cả hai phương pháp đều thay thế một ký tự bằng một giá trị mà bạn chỉ định. Và nếu bạn chỉ định một ký tự trống thay vào đó, ký tự bạn muốn xóa sẽ bị xóa mà không cần thay thế
Một điều cần lưu ý khi sử dụng các phương thức này là chuỗi gốc không bị thay đổi vì chuỗi là bất biến. Thay vào đó, cả hai phương thức đều trả về một chuỗi mới đã sửa đổi không chứa các ký tự bạn muốn xóa
Trong bài viết này, bạn sẽ học cách sử dụng cả hai phương pháp để xóa một ký tự hoặc nhiều ký tự khỏi một chuỗi với sự trợ giúp của các ví dụ mã hóa
Đây là những gì chúng tôi sẽ đề cập
Hãy đi sâu vào
Cách xóa một ký tự cụ thể khỏi chuỗi trong Python bằng phương thức my_string = "Hi! I! Love! Python!" 0
Cú pháp chung của phương thức my_string = "Hi! I! Love! Python!" 0 tương tự như sau
string.replace( character, replacement, count)Hãy phá vỡ nó
- Bạn thêm phương thức my_string = "Hi! I! Love! Python!" 0 vào một my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 0
- Phương thức my_string = "Hi! I! Love! Python!"
0 chấp nhận ba đối số
- my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 2 là đối số bắt buộc và đại diện cho ký tự cụ thể mà bạn muốn xóa khỏi my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 0
- my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 4 là một đối số bắt buộc và đại diện cho chuỗi/ký tự mới sẽ thay thế cho my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 2
- my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 6 là đối số tùy chọn đại diện cho số lần xuất hiện tối đa của my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 2 mà bạn muốn xóa khỏi my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 0. Nếu bạn không bao gồm my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 6, thì theo mặc định, phương thức my_string = "Hi! I! Love! Python!" 0 sẽ loại bỏ tất cả các lần xuất hiện của my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 2
Phương thức my_string = "Hi! I! Love! Python!" 0 không sửa đổi chuỗi gốc. Thay vào đó, giá trị trả về của nó là một bản sao của chuỗi gốc không có ký tự bạn muốn xóa
Bây giờ, hãy xem hoạt động của my_string = "Hi! I! Love! Python!" 0
Giả sử bạn có chuỗi sau và bạn muốn xóa tất cả các dấu chấm than
my_string = "Hi! I! Love! Python!"Đây là cách bạn sẽ loại bỏ tất cả các lần xuất hiện của ký tự my_string = "Hi! I! Love! Python!" 14
my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love PythonTrong ví dụ trên, tôi đã thêm phương thức my_string = "Hi! I! Love! Python!" 0 vào my_string = "Hi! I! Love! Python!" 16
Sau đó tôi lưu trữ kết quả trong một biến mới có tên là my_string = "Hi! I! Love! Python!" 17
Hãy nhớ rằng, chuỗi là bất biến. Chuỗi ban đầu không thay đổi - my_string = "Hi! I! Love! Python!" 0 trả về một chuỗi mới và không sửa đổi chuỗi ban đầu
Tôi đã xác định rằng tôi muốn xóa ký tự my_string = "Hi! I! Love! Python!" 14 và cho biết rằng tôi muốn thay thế my_string = "Hi! I! Love! Python!" 14 bằng một ký tự trống
Tôi cũng không sử dụng đối số my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 6, vì vậy, my_string = "Hi! I! Love! Python!" 0 đã thay thế tất cả các lần xuất hiện của ký tự my_string = "Hi! I! Love! Python!" 14 bằng một ký tự trống
Chuỗi ban đầu được lưu trữ trong một biến my_string = "Hi! I! Love! Python!" 16 có bốn lần xuất hiện của ký tự my_string = "Hi! I! Love! Python!" 14
Nếu tôi chỉ muốn loại bỏ ba lần xuất hiện của ký tự và không phải tất cả chúng, tôi sẽ sử dụng đối số my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 6 và chuyển một giá trị là my_string = "Hi! I! Love! Python!" 57 để chỉ định số lần tôi muốn thay thế ký tự đó
my_string = "Hi! I! Love! Python!" 1Cách xóa nhiều ký tự khỏi một chuỗi trong Python bằng phương pháp my_string = "Hi! I! Love! Python!" 0
Có thể sẽ có lúc bạn cần thay thế nhiều ký tự trong một chuỗi
Trong các phần sau, bạn sẽ thấy ba cách bạn có thể đạt được điều này bằng cách sử dụng phương pháp my_string = "Hi! I! Love! Python!" 0
Xóa nhiều ký tự bằng chuỗi phương thức
Một cách bạn có thể đạt được điều này là xâu chuỗi phương thức my_string = "Hi! I! Love! Python!" 0 như vậy
my_string = "Hi! I! Love! Python!" 5Điều đó nói rằng, cách loại bỏ các ký tự này có thể khá khó đọc
Xóa nhiều ký tự bằng vòng lặp my_string = "Hi! I! Love! Python!" 4
Một cách khác để thực hiện điều này là sử dụng phương thức my_string = "Hi! I! Love! Python!" 0 bên trong vòng lặp my_string = "Hi! I! Love! Python!" 4
string.replace( character, replacement, count) 4Lần đầu tiên tôi tạo một chuỗi chứa hai ký tự mà tôi muốn xóa, my_string = "Hi! I! Love! Python!" 14 và string.replace( character, replacement, count) 45, rồi lưu trữ nó trong biến my_string = "Hi! I! Love! Python!" 16
Tôi đã lưu trữ các ký tự tôi muốn thay thế, cùng với các ký tự thay thế của chúng, trong danh sách các bộ có tên string.replace( character, replacement, count) 47 - Tôi muốn thay thế my_string = "Hi! I! Love! Python!" 14 bằng một chuỗi trống và string.replace( character, replacement, count) 45 bằng một chuỗi trống
Sau đó, tôi sử dụng vòng lặp my_string = "Hi! I! Love! Python!" 4 để lặp qua danh sách các bộ dữ liệu (nếu bạn cần xem lại vòng lặp my_string = "Hi! I! Love! Python!" 4, hãy đọc bài viết này)
Trong vòng lặp my_string = "Hi! I! Love! Python!" 4, tôi đã sử dụng toán tử my_string = "Hi! I! Love! Python!" 43 để kiểm tra xem các ký tự có nằm trong chuỗi không. Và nếu có, tôi đã sử dụng phương pháp my_string = "Hi! I! Love! Python!" 0 để thay thế chúng
Cuối cùng, tôi gán lại biến
Xóa nhiều ký tự bằng biểu thức chính quy
Và một cách khác để thực hiện điều này là sử dụng thư viện biểu thức chính quy my_string = "Hi! I! Love! Python!" 45 và phương thức my_string = "Hi! I! Love! Python!" 46
Trước tiên, bạn cần nhập thư viện
my_string = "Hi! I! Love! Python!" 4Sau đó, chỉ định nhóm ký tự bạn muốn xóa (trong trường hợp này là ký tự my_string = "Hi! I! Love! Python!" 14 và string.replace( character, replacement, count) 45), cùng với các ký tự bạn muốn thay thế chúng bằng. Trong trường hợp này, ký tự thay thế là một ký tự trống
my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 1Cách xóa một ký tự cụ thể khỏi chuỗi trong Python bằng phương pháp my_string = "Hi! I! Love! Python!" 1
Tương tự như phương thức my_string = "Hi! I! Love! Python!" 0, my_string = "Hi! I! Love! Python!" 1 xóa các ký tự khỏi chuỗi
Như đã nói, phương pháp my_string = "Hi! I! Love! Python!" 1 phức tạp hơn một chút và không thân thiện với người mới bắt đầu nhất
Phương thức my_string = "Hi! I! Love! Python!" 0 là giải pháp đơn giản nhất để sử dụng khi bạn cần xóa các ký tự khỏi chuỗi
Khi sử dụng phương thức my_string = "Hi! I! Love! Python!" 1 để thay thế một ký tự trong chuỗi, bạn cần tạo một bảng dịch ký tự, trong đó my_string = "Hi! I! Love! Python!" 1 sử dụng nội dung của bảng để thay thế các ký tự
Bảng dịch là một từ điển ánh xạ khóa-giá trị và mỗi khóa được thay thế bằng một giá trị
Bạn có thể sử dụng hàm my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 16 để lấy giá trị Unicode của ký tự rồi ánh xạ giá trị đó sang ký tự khác
Phương thức này trả về một chuỗi mới trong đó mỗi ký tự từ chuỗi cũ được ánh xạ tới một ký tự từ bảng dịch
Giá trị trả về là một chuỗi mới
Hãy xem một ví dụ sử dụng cùng mã từ các phần trước
my_string = "Hi! I! Love! Python!" 0Trong ví dụ trên, tôi đã sử dụng hàm my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 16 để trả về giá trị Unicode được liên kết với ký tự mà tôi muốn thay thế, trong trường hợp này là my_string = "Hi! I! Love! Python!" 14
Sau đó, tôi đã ánh xạ giá trị Unicode đó thành my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 19 - một từ khác có nghĩa là không có gì hoặc trống rỗng - để đảm bảo xóa nó. Cụ thể, nó đã thay thế mọi phiên bản của ký tự my_string = "Hi! I! Love! Python!" 14 bằng giá trị my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 19
Cách xóa nhiều ký tự khỏi chuỗi trong Python bằng phương pháp my_string = "Hi! I! Love! Python!" 1
Điều gì sẽ xảy ra nếu bạn cần thay thế nhiều ký tự bằng phương pháp my_string = "Hi! I! Love! Python!" 1?
my_string = "Hi! I! Love! Python!" 8Trong ví dụ trên, tôi đã thay thế cả hai ký tự my_string = "Hi! I! Love! Python!" 14 và string.replace( character, replacement, count) 45 bằng giá trị my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 19 bằng cách sử dụng một trình vòng lặp lặp qua các ký tự mà tôi muốn xóa
Phương thức my_string = "Hi! I! Love! Python!" 1 kiểm tra xem mỗi ký tự trong my_string = "Hi! I! Love! Python!" 16 có bằng dấu chấm than hay dấu chấm hỏi không. Nếu có, thì nó sẽ được thay thế bằng my_string = "Hi! I! Love! Python!" my_new_string = my_string.replace("!", "") print(my_new_string) # output # Hi I Love Python 19
Phần kết luận
Hy vọng rằng bài viết này đã giúp bạn hiểu cách xóa các ký tự khỏi chuỗi trong Python bằng cách sử dụng các phương thức chuỗi my_string = "Hi! I! Love! Python!" 0 và my_string = "Hi! I! Love! Python!" 1 tích hợp
Cảm ơn bạn đã đọc và chúc bạn mã hóa vui vẻ
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
Học một cái gì đó mới mỗi ngày và viết về nó
Nếu bài viết này hữu ích, hãy tweet nó
Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu