[解決済み】文字列からすべての空白を取り除く方法
2022-04-07 05:59:27
質問
Python の文字列からすべてのスペースを取り除くにはどうすればよいですか?例えば、私は以下のような文字列が欲しいです。
strip my spaces
を
stripmyspaces
でそれを実現することはできないようです。
strip()
:
>>> 'strip my spaces'.strip()
'strip my spaces'
解決方法は?
sepパラメータがない場合のstr.splitの挙動を利用する。
>>> s = " \t foo \n bar "
>>> "".join(s.split())
'foobar'
すべての空白文字を削除するのではなく、空白文字だけを削除したい場合。
>>> s.replace(" ", "")
'\tfoo\nbar'
早すぎる最適化
効率は第一の目標ではなく、明確なコードを書くことですが、ここでは初期のタイミングを紹介します。
$ python -m timeit '"".join(" \t foo \n bar ".split())'
1000000 loops, best of 3: 1.38 usec per loop
$ python -m timeit -s 'import re' 're.sub(r"\s+", "", " \t foo \n bar ")'
100000 loops, best of 3: 15.6 usec per loop
正規表現はキャッシュされているので、想像しているほど遅くはない。 事前にコンパイルしておくと便利ですが、実際に問題になるのはこの たくさん を何度も使用します。
$ python -m timeit -s 'import re; e = re.compile(r"\s+")' 'e.sub("", " \t foo \n bar ")'
100000 loops, best of 3: 7.76 usec per loop
re.subは11.3倍遅いですが、ボトルネックは他の場所にあることを忘れないでください。 ほとんどのプログラムは、これら3つの選択肢の違いに気づかないでしょう。
関連
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] バイトを文字列に変換する
-
[解決済み] 文字列をfloatやintにパースするにはどうしたらいいですか?
-
[解決済み] pipでPythonの全パッケージをアップグレードする方法
-
[解決済み] 改行やスペースを入れずに印刷する方法
-
[解決済み] 文字列から空白を取り除くには?
-
[解決済み] 空白文字を削除するにはどうすればよいですか?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
Pythonショートビデオクローラーチュートリアル
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】csv.Error:イテレータはバイトではなく文字列を返すべき
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み】NameError: 名前 'self' が定義されていません。
-
[解決済み】 TypeError: += でサポートされていないオペランド型: 'int' および 'list' です。
-
[解決済み] 空白文字を削除するにはどうすればよいですか?