1. ホーム
  2. python

[解決済み] Python 文字列の最後の3文字を削除する

2022-04-15 12:14:51

質問

Pythonで文字列から最後の3文字を削除しようとしていますが、これらの文字が何であるかがわからないので rstrip また、空白を削除し、大文字に変換する必要があります。

のような例があります。

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

しかし、最後の4番目と3番目の文字が同じであれば、両方が失われます。 foo = "BS11 1AA" 私はただ 'BS'

の例 foo が考えられます。

BS1 1AB
bs11ab
BS111ab

文字列は6文字または7文字で、最後の3文字を削除する必要があります(空白はないと仮定します)。

何かコツはありますか?

どのように解決するのですか?

あらゆる空白を削除する。

foo = ''.join(foo.split())

最後の3文字を削除する。

foo = foo[:-3]

大文字に変換する。

foo = foo.upper()

そのすべてのコードを1行で。

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