Hướng dẫn how do you remove the last 5 characters of a string in python? - làm cách nào để xóa 5 ký tự cuối cùng của một chuỗi trong python?

Tôi đang cố gắng loại bỏ 3 ký tự cuối cùng khỏi một chuỗi trong Python, tôi không biết những nhân vật này là gì để tôi không thể sử dụng

BS1 1AB
bs11ab
BS111ab
6, tôi cũng cần loại bỏ bất kỳ không gian trắng nào và chuyển đổi thành trường hợp trên.

Một ví dụ sẽ là:

foo = "Bs12 3ab"
foo.replace[" ", ""].rstrip[foo[-3:]].upper[]

Điều này hoạt động và cho tôi

BS1 1AB
bs11ab
BS111ab
7, đó là những gì tôi muốn, tuy nhiên nếu các ký tự thứ 4 & 3 cuối cùng là giống nhau, tôi mất cả hai, ví dụ: Nếu
BS1 1AB
bs11ab
BS111ab
8 tôi chỉ nhận được
BS1 1AB
bs11ab
BS111ab
9.

Ví dụ về

foo = ''.join[foo.split[]]
0 có thể là:

BS1 1AB
bs11ab
BS111ab

Chuỗi có thể là 6 hoặc 7 ký tự và tôi cần bỏ 3 lần cuối cùng [giả sử không có khoảng trắng].

mkrieger1

15.8k4 Huy hiệu vàng46 Huy hiệu bạc57 Huy hiệu Đồng4 gold badges46 silver badges57 bronze badges

Đã hỏi ngày 25 tháng 11 năm 2009 lúc 17:14Nov 25, 2009 at 17:14

2

Loại bỏ bất kỳ và tất cả khoảng trắng:

foo = ''.join[foo.split[]]

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

foo = foo[:-3]

Chuyển đổi sang chữ in hoa:

foo = foo.upper[]

Tất cả mã đó trong một dòng:

foo = ''.join[foo.split[]][:-3].upper[]

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:23Nov 25, 2009 at 17:23

Noctis Skytowernoctis SkytowerNoctis Skytower

20.7K16 Huy hiệu vàng78 Huy hiệu bạc112 Huy hiệu đồng16 gold badges78 silver badges112 bronze badges

1

Nó không hoạt động như bạn mong đợi vì dải dựa trên nhân vật. Bạn cần phải làm điều này thay thế:

foo = foo.replace[' ', ''][:-3].upper[]

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:17Nov 25, 2009 at 17:17

Nadia Alramlinadia AlramliNadia Alramli

108K35 Huy hiệu vàng170 Huy hiệu bạc151 Huy hiệu đồng35 gold badges170 silver badges151 bronze badges

1

>>> foo = "Bs12 3ab"
>>> foo[:-3]
'Bs12 '
>>> foo[:-3].strip[]
'Bs12'
>>> foo[:-3].strip[].replace[" ",""]
'Bs12'
>>> foo[:-3].strip[].replace[" ",""].upper[]
'BS12'

Đã trả lời ngày 26 tháng 11 năm 2009 lúc 1:15Nov 26, 2009 at 1:15

ghostdog74ghostdog74ghostdog74

314K55 Huy hiệu vàng252 Huy hiệu bạc340 Huy hiệu đồng55 gold badges252 silver badges340 bronze badges

2

Bạn có thể bị hiểu lầm một chút, nó không phải là một chuỗi mà là bất kỳ ký tự nào trong chuỗi bạn chỉ định.

Như thế này:

>>> text = "xxxxcbaabc"
>>> text.rstrip["abc"]
'xxxx'

Vì vậy, thay vào đó, chỉ cần sử dụng

text = text[:-3] 

[sau khi thay thế khoảng trắng không có gì]

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:22Nov 25, 2009 at 17:22

Mattias Nilssonmattias NilssonMattias Nilsson

3,5741 Huy hiệu vàng23 Huy hiệu bạc28 Huy hiệu đồng1 gold badge23 silver badges28 bronze badges

BS1 1AB
bs11ab
BS111ab
0

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:18Nov 25, 2009 at 17:18

SilentghostsilentghostSilentGhost

294K64 Huy hiệu vàng301 Huy hiệu bạc291 Huy hiệu Đồng64 gold badges301 silver badges291 bronze badges

Tôi cố gắng tránh các biểu thức thường xuyên, nhưng điều này có vẻ hoạt động:

foo = ''.join[foo.split[]]
1

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:29Nov 25, 2009 at 17:29

krs1krs1krs1

1.1057 huy hiệu bạc16 Huy hiệu đồng7 silver badges16 bronze badges

2

  1. foo = ''.join[foo.split[]]
    
    2
  2. foo = ''.join[foo.split[]]
    
    3
  3. foo = ''.join[foo.split[]]
    
    4

Đây là một bài tập luyện tốt cho người mới bắt đầu và thật dễ dàng để đạt được.

Một phương pháp nâng cao khác là một hàm như thế này:

BS1 1AB
bs11ab
BS111ab
1

Và đối với câu hỏi này, bạn chỉ muốn xóa các ký tự cuối cùng, vì vậy bạn có thể viết như thế này:

BS1 1AB
bs11ab
BS111ab
2

Tôi nghĩ rằng bạn đã kết thúc để quan tâm đến ba nhân vật đó là gì, vì vậy bạn đã thua. Bạn chỉ muốn loại bỏ ba người cuối cùng, tuy nhiên họ là ai!

Nếu bạn muốn xóa một số ký tự cụ thể, bạn có thể thêm một số phán đoán:

BS1 1AB
bs11ab
BS111ab
3

Đã trả lời ngày 28 tháng 11 năm 2018 lúc 1:50Nov 28, 2018 at 1:50

Có gì sai với điều này?

BS1 1AB
bs11ab
BS111ab
4

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:18Nov 25, 2009 at 17:18

Silentghostsilentghostabyx

294K64 Huy hiệu vàng301 Huy hiệu bạc291 Huy hiệu Đồng18 gold badges91 silver badges116 bronze badges

Tôi cố gắng tránh các biểu thức thường xuyên, nhưng điều này có vẻ hoạt động:

Đã trả lời ngày 25 tháng 11 năm 2009 lúc 17:29Nov 25, 2009 at 17:26

1.1057 huy hiệu bạc16 Huy hiệu đồngAndreaG

Đây là một bài tập luyện tốt cho người mới bắt đầu và thật dễ dàng để đạt được.2 gold badges12 silver badges27 bronze badges

1

Một phương pháp nâng cao khác là một hàm như thế này:

BS1 1AB
bs11ab
BS111ab
5

Và đối với câu hỏi này, bạn chỉ muốn xóa các ký tự cuối cùng, vì vậy bạn có thể viết như thế này:Nov 25, 2009 at 17:33

Làm thế nào để bạn loại bỏ 5 ký tự cuối cùng trong Python?

5 cách để loại bỏ ký tự cuối cùng khỏi chuỗi trong Python..
Sử dụng chỉ số tích cực bằng cách cắt ..
Sử dụng chỉ số tiêu cực bằng cách cắt ..
Sử dụng chức năng Rstrip để xóa ký tự cuối cùng khỏi chuỗi trong Python ..
Sử dụng cho vòng lặp để xóa ký tự cuối cùng khỏi chuỗi trong Python ..
Sử dụng chức năng regex ..

Làm cách nào để loại bỏ 3 ký tự cuối cùng khỏi một chuỗi trong Python?

Đây là một ví dụ, loại bỏ 3 ký tự cuối cùng khỏi chuỗi sau ...
str = "bạn thế nào" đã sửa đổi = str [:-3] in [sửa đổi].
str = "bạn thế nào" sửa đổi = str.rstrip ["bạn"] in [sửa đổi] # "thế nào".
name = "Justin" sửa đổi = name.rstrip ["stin"] # xóa 4 ký tự cuối cùng [sửa đổi] # "ju".

Làm cách nào để loại bỏ 5 ký tự đầu tiên khỏi một chuỗi trong Python?

Bạn có thể sử dụng các biểu thức chính quy của Python để xóa N ký tự đầu tiên khỏi chuỗi, sử dụng phương thức .Sub [] của re.Điều này được thực hiện bằng cách truyền trong một nhân vật ký tự đại diện và giới hạn sự thay thế cho một sự thay thế duy nhất.using re's . sub[] method. This is accomplished by passing in a wildcard character and limiting the substitution to a single substitution.

Làm cách nào để thay đổi 3 ký tự cuối cùng trong Python?

RSplit [str [-n:], 1].Nó trả về một chuỗi của tất cả các ký tự trong chuỗi ngoại trừ n ký tự cuối cùng.Sau đó tham gia các ký tự này với bộ con 'xxx' bằng hàm nối [].Nó đã thay thế 3 ký tự cuối cùng trong chuỗi bằng cách xxx. . It returns a sequence of all characters in string except the last N characters. Then join these characters with the substring 'XXX' using the join[] function. It replaced the last 3 characters in string with “XXX”.

Bài Viết Liên Quan

Chủ Đề