我正在尝试从 Python 中的字符串中删除最后 3 个字符,我不知道这些字符是什么所以我不能使用 rstrip
,我还需要删除任何白色空格并转换为大写。
一个例子是:
foo = "Bs12 3ab"
foo.replace(" ", "").rstrip(foo[-3:]).upper()
这有效并给了我 "BS12"
这是我想要的,但是如果最后第 4 和第 3 个字符相同,我会丢失两个,例如如果 foo = "BS11 1AA"
我只是得到 "BS"
。
foo
的示例可以是:
BS1 1AB
bs11ab
BS111ab
字符串可以是 6 或 7 个字符,我需要删除最后 3 个字符(假设没有空格)。
最佳答案
删除所有空格:
foo = ''.join(foo.split())
删除最后三个字符:
foo = foo[:-3]
转换为大写字母:
foo = foo.upper()
一行代码:
foo = ''.join(foo.split())[:-3].upper()
关于python - 删除字符串的最后 3 个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1798465/