1. ホーム
  2. python

[解決済み] Pythonで空の文字列リテラルを初期化するためにstr()を使用することの長所と短所

2022-02-15 01:33:59

質問

C#などの他の言語と異なり、Pythonの標準ライブラリから空文字列をインポートする方法はありません。しかし、組み込みの関数 str() 引数が与えられない場合、空文字列をデフォルトとします。

を使用することの長所と短所は何でしょうか? str() --と比較して '' または empty_str = '' -空の文字列を表すには?オーバーヘッドは無視できるほど小さいと思います。 '' または "" . ひとつには、視覚的に明らかに変数が str メモ帳でも 明らかなデメリットとしては、キーボードを打つ回数が '' には及ばないが empty_str . 他にメリット・デメリットはありますか?

解決方法は?

全く同じ効果があり '' (または "" を使用する必要があります (類似の [] に対して list であり、かつ () に対して tuple , {} について dict ).

そして、Pythonは確かに小さな定数(空文字列を含む短い文字列と小さな数字)のための内部グローバルキャッシュを持つことになります。それを id('') または id(0) の場合、常に同じ値を返す可能性が非常に高いです。(これは実装に依存しますが、CPythonはこのように動作します)。