Làm cách nào để xóa ký tự theo sau trong python?

Python hỗ trợ cắt chỉ mục tiêu cực cùng với cắt theo hướng tích cực. Chỉ mục phủ định bắt đầu từ -1 đến -[iterable_length]. Chúng tôi sẽ sử dụng phép cắt âm để lấy các phần tử từ cuối một lần lặp

  • Chỉ mục -1 giúp bạn lấy phần tử cuối cùng từ phần tử có thể lặp lại
  • Chỉ mục -2 giúp bạn có phần tử cuối cùng thứ 2 từ phần tử có thể lặp lại
  • Và nó tiếp tục cho đến phần tử đầu tiên

Hãy xem một ví dụ

name = 'Geekflare'
print[name[-1]]
print[name[-len[name]]]

Chương trình trên sẽ in các ký tự cuối cùng và đầu tiên của chuỗi bằng cách sử dụng chỉ mục phủ định

Làm cách nào để xóa phần tử cuối cùng khỏi chuỗi bằng cách cắt? . Chúng tôi biết cách trích xuất một phần của chuỗi bằng cách cắt. Hãy áp dụng điều tương tự với chỉ số âm để xóa ký tự cuối cùng khỏi chuỗi

  • Cắt chuỗi từ đầu đến cuối trước phần tử
buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]

Hãy tập trung vào dòng thứ hai trong đoạn mã trên. Đó là dòng ma thuật trong mã. Là một phép cắt truyền thống, nó trích xuất chuỗi con từ chỉ mục bắt đầu đến cuối cùng nhưng một phép cắt bỏ qua phần tử chỉ mục thứ hai đã cho

Bạn sẽ nhận được 

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]
5 dưới dạng đầu ra nếu chạy đoạn mã trên

dải băng

Phương thức chuỗi rstrip xóa các ký tự ở phía bên phải của chuỗi được cấp cho nó. Vì vậy, chúng ta có thể sử dụng nó để loại bỏ phần tử cuối cùng của chuỗi. Chúng tôi không phải viết nhiều hơn một dòng mã để xóa ký tự cuối cùng khỏi chuỗi

  • Cung cấp phần tử cuối cùng cho phương thức dải, nó sẽ trả về chuỗi bằng cách xóa ký tự cuối cùng

Hãy xem đoạn mã

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]

Chúng tôi đã cung cấp ký tự cuối cùng của chuỗi cho phương thức dải. Nó xóa ký tự cuối cùng khỏi chuỗi và trả về một bản sao không có ký tự cuối cùng

Nó sẽ in 

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]
5 trong bảng điều khiển, nếu bạn thực hiện nó

Ví dụ thực tế – loại bỏ từ cuối cùng

Vâng, chúng tôi sẽ áp dụng những gì chúng tôi có trong các phần trước trong một ví dụ thực tế

Giả sử chúng ta có một tệp chứa nhiều dòng văn bản. Và chúng ta cần xóa từ cuối cùng khỏi mỗi dòng trong tệp

Thực hiện theo các bước dưới đây để viết chương trình

  • Tạo một tệp có tên random_text. txt và trang một vài dòng văn bản trong đó
  • Khởi tạo biến dữ liệu dưới dạng chuỗi rỗng
  • Mở tệp bằng phương thức với và mở ở chế độ đọc và ghi
  • Đọc nội dung của tệp bằng phương thức readlines
  • Lặp lại qua từng dòng nội dung
    • Tách dòng văn bản bằng phương pháp tách dòng trong word
    • Xóa từ cuối cùng bằng một trong các phương pháp trên
    • Tham gia kết quả để tạo thành một chuỗi
    • Nối kết quả vào biến dữ liệu
  • Xóa dữ liệu khỏi tệp bằng các phương pháp tìm kiếm và rút gọn 
  • Ghi dữ liệu mới nhất vào tệp bằng phương thức ghi 

Tệp chứa dữ liệu sau

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.

Xem mã dưới đây

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]

Nếu bạn thực thi đoạn mã trên với tệp đã cho, thì tệp sẽ có dữ liệu được cập nhật như sau

Đôi khi, trong khi làm việc với danh sách Chuỗi, chúng ta có thể gặp sự cố trong đó chúng ta cần thực hiện xóa các ký tự thừa có thể được gọi là không mong muốn và xảy ra ở cuối mỗi chuỗi. Hãy thảo luận về một cách mà nhiệm vụ này có thể được thực hiện.  

Phương pháp 1. Sử dụng bản đồ[] + str. dải[]

Sự kết hợp của hai chức năng trên có thể giúp chúng tôi đạt được nhiệm vụ cụ thể này. Trong phần này, chúng tôi sử dụng dải [], có khả năng loại bỏ các ký tự đặc biệt không mong muốn ở cuối và ở đầu khỏi danh sách chuỗi. Map[], được sử dụng để mở rộng logic cho từng phần tử trong danh sách.  

Bạn cũng sẽ thấy cách sử dụng các phương thức

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
6 và
greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
7, là phương thức tương tự của
greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5

Bắt đầu nào

Cách cắt chuỗi trong Python

Python có ba phương thức tích hợp để cắt bớt khoảng trắng đầu và cuối và các ký tự từ chuỗi

  • greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    5
  • greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    6
  • greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    7

Mỗi phương thức trả về một chuỗi đã cắt mới

Cách xóa khoảng trắng ở đầu và cuối khỏi chuỗi trong Python

Khi phương thức

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5 không có đối số, nó sẽ xóa mọi khoảng trắng ở đầu và/hoặc ở cuối khỏi một chuỗi

Vì vậy, nếu bạn có khoảng trắng ở đầu và/hoặc cuối của một từ hoặc cụm từ, theo mặc định, riêng

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5 sẽ xóa khoảng trắng đó

Biến sau đây

buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
34 có chuỗi "Xin chào" được lưu trữ trong đó. Chuỗi có khoảng trống ở cả bên phải và bên trái của nó

buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
4

Để loại bỏ cả hai, bạn sử dụng phương pháp

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5, như vậy

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?

Bạn cũng có thể sử dụng phương pháp

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5 theo cách này

buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
3

Cách xóa các ký tự đầu và cuối khỏi chuỗi trong Python

Phương thức

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
5 lấy các ký tự tùy chọn được truyền làm đối số

Các ký tự bạn thêm làm đối số chỉ định ký tự nào bạn muốn xóa khỏi đầu và cuối chuỗi

Dưới đây là cú pháp chung cho trường hợp này

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
0

Các ký tự bạn chỉ định được đặt trong dấu ngoặc kép

Vì vậy, ví dụ, giả sử bạn có chuỗi sau

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
1

Bạn muốn xóa "H" và "?", tương ứng ở đầu và cuối chuỗi

Để xóa chúng, bạn chuyển cả hai ký tự làm đối số cho

buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
38

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
3

Lưu ý điều gì sẽ xảy ra khi bạn muốn xóa "W" khỏi "World", nằm ở giữa chứ không phải ở đầu hoặc cuối chuỗi và bạn đưa nó vào làm đối số

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
4

Nó sẽ không bị xóa. Chỉ các ký tự ở đầu và cuối của chuỗi đã nói mới bị xóa

Điều đó đang được nói, nhìn vào ví dụ tiếp theo

Giả sử bạn muốn xóa hai ký tự đầu tiên và hai ký tự cuối cùng của chuỗi

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
5

Hai ký tự đầu tiên ["Anh ấy"] và hai ký tự cuối cùng ["d?"] của chuỗi đã bị xóa

Một điều khác cần lưu ý là đối số không chỉ xóa phiên bản đầu tiên của ký tự được chỉ định

Ví dụ: giả sử bạn có một chuỗi có một vài dấu chấm ở đầu và một vài dấu chấm than ở cuối

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
6

Khi bạn chỉ định làm đối số

buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
39 và
buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
00, tất cả các phiên bản của cả hai sẽ bị xóa

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
9

Cách xóa chỉ khoảng trắng hàng đầu và ký tự khỏi chuỗi trong Python

Để chỉ xóa khoảng trắng và ký tự ở đầu, hãy sử dụng

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
6

Điều này hữu ích khi bạn chỉ muốn xóa khoảng trắng và các ký tự ở đầu chuỗi

Một ví dụ cho việc này là xóa

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
02 khỏi tên miền

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
0

Trong ví dụ này, tôi đã sử dụng các ký tự

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
03 và
buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
39 ở cả đầu và cuối chuỗi để giới thiệu cách thức hoạt động của
greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
6

Nếu tôi đã sử dụng

buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
06, tôi sẽ có kết quả như sau

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
1

Điều tương tự cũng xảy ra với việc xóa khoảng trắng

Hãy lấy một ví dụ từ phần trước

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
2

Chỉ có khoảng trắng từ đầu chuỗi đã bị xóa khỏi đầu ra

Cách xóa chỉ khoảng trắng ở cuối và ký tự khỏi chuỗi trong Python

Để chỉ xóa khoảng trắng và ký tự ở cuối, hãy sử dụng phương pháp

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
7

Giả sử bạn chỉ muốn xóa tất cả dấu chấm câu ở cuối chuỗi

Bạn sẽ làm như sau

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
3

Tương tự với khoảng trắng

Lấy lại ví dụ từ trước, lần này khoảng trắng sẽ chỉ bị xóa ở cuối đầu ra

greeting = "     Hello!  "

stripped_greeting = greeting.strip[]

print[stripped_greeting,"How are you?"]

#output
#Hello! How are you?
4

Phần kết luận

Và bạn có nó rồi đấy. Bây giờ bạn đã biết những kiến ​​thức cơ bản về cách cắt chuỗi trong Python

Tóm lại

  • Sử dụng phương pháp
    greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    5 để xóa khoảng trắng và ký tự ở đầu và cuối chuỗi
  • Sử dụng phương thức
    greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    6 để chỉ xóa khoảng trắng và ký tự ở đầu chuỗi
  • Sử dụng phương pháp
    greeting = "     Hello!  "
    
    stripped_greeting = greeting.strip[]
    
    print[stripped_greeting,"How are you?"]
    
    #output
    #Hello! How are you?
    
    7 để chỉ xóa khoảng trắng và ký tự ở cuối chuỗi

Nếu bạn muốn tìm hiểu thêm về Python, hãy xem Chứng chỉ Python của freeCodeCamp. Bạn sẽ bắt đầu học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để áp dụng vào thực tế và giúp củng cố những gì bạn đã học

Cảm ơn đã đọc và mã hóa hạnh phúc

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

Dionysia Lemonaki

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

Làm cách nào để xóa các ký tự đặc biệt khỏi cuối chuỗi trong Python?

Các phương pháp sau có thể được sử dụng để xóa các ký tự đặc biệt khỏi chuỗi trong python, .
Phương thức isalnum[]
Sử dụng Biểu thức chính quy [Regex] trong python
Phương thức thay thế[]
Phương thức lọc[]
Phương thức dịch[]

Dải R [] trong Python là gì?

Phương thức rstrip[] của Python String trả về một bản sao của chuỗi đã xóa các ký tự ở cuối [dựa trên đối số chuỗi đã truyền]. Nếu không có đối số nào được thông qua, nó sẽ xóa dấu cách.

Chủ Đề