私はこの古いモジュールを2002年頃に読んでいます。この行は "import string"です。文字列型の変数などを使用できるようにするには、Pythonで文字列モジュールを明示的にインポートする必要がありますか?私はそれがコード内でこのように使用され表示されません。python "string"モジュールですか?
string.something
私はこの古いモジュールを2002年頃に読んでいます。この行は "import string"です。文字列型の変数などを使用できるようにするには、Pythonで文字列モジュールを明示的にインポートする必要がありますか?私はそれがコード内でこのように使用され表示されません。python "string"モジュールですか?
string.something
あなたがimport string
を見ませんが、決してstring.something
が表示された場合、誰かがちょうど未使用のインポートを削除するのを忘れました。
は今str
オブジェクトの標準的な方法ですstring
でいくつかのものであることを使用がなかったものの、それでもライブラリをインポートした後string.
、または
from string import <whatever>
構文。前方/後方互換性が新しい言語機能のためのPythonで使用されるトリガー -一般的に、唯一の時間は、あなたが何かを正しくインポートされたが、「明示的に使用しない」決してfrom __future__ import with_statement
などされて表示されます。うまく
、古いバージョンでは、文字列のモジュールは確かにはるかに有用であったが、最近のバージョンでは、文字列モジュールの機能のほとんどは、文字列のメソッドとしても利用可能です。..
このページでは、よりよい一見を与えます。アンバーのよう http://effbot.org/librarybook/string.htm
は、冗長インポートであるように思われ、RoeeeKがあなたの代わりにstring.function("foobar")
の"foobar".method()
を行うことができますつまり、string
モジュールの機能のほとんどが、その間の文字列メソッドであることを言っても右である、と述べました。しかし、明示的にモジュールをインポートすることは、時には有効です。たとえば、コールバックの場合:
map(string.strip, [' foo ', ' bar '])
です。
上記は[chunk.strip() for chunk in [' foo ', ' bar ']]
でも達成できるので、string
のインポートは実際にはこの場合は必要ありません。
'map(str.strip、['foo'、 'bar'])' –
あ、いいですね。私はこれを知っていたはずのように感じますが、どういうわけか、私はしませんでした。私の答えが無意味になっても、それを指摘してくれてありがとう。 :) – jena
string
モジュールは、ascii_letters
およびdigits
などのa set of useful constantsを含んでおり、その理由でモジュールがインポートされることがよくあります。
まだまだです:http://docs.python.org/library/string.html – NullUserException