Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonにはクラスに「プライベート」変数がありますか?


Pythonクラス自体には「プライベート変数」はありません。 Pythonのすべての変数とメソッドは、デフォルトでパブリックです。変数の名前に二重アンダースコア__プレフィックスを使用することにより、プライベート変数のエミュレーションが行われる場合があります。これにより、これらの変数が非表示になるか、それらを含むクラスの外部で簡単に表示されなくなります。これは、名前マングリングによって実現されます。これらの「プライベート変数」は、特定の回避策コードを使用してアクセスできるため、実際には安全でもプライベートでもありません。したがって、変数名の前に1つのアンダースコア_(セミプライベート)と2つのアンダースコア__(完全にプライベート)を付けると、変数にアクセスしにくくなり、変数を含むクラスの外部で簡単に表示できなくなります。


  1. %はPythonの文字列に何をしますか?

    %は、文字列フォーマット演算子または補間演算子です。 formatの%値(formatは文字列)を指定すると、formatの%変換仕様は、0個以上の値の要素に置き換えられます。この効果は、C言語でsprintf()を使用する場合と同様です。たとえば、 >>> lang = "Python" >>> print "%s is awesome!" % lang Python is awesome この表記で数値をフォーマットすることもできます。たとえば、 >>> cost = 128.527 >&

  2. Pythonには文字列'contains'substringメソッドがありますか?

    containsサブストリングメソッドを持たないPythonはありません。代わりに、次の2つの方法のいずれかを使用できます。 Pythonには、文字列が別の文字列のサブ文字列であるかどうかを検索するためのキーワード「in」があります。たとえば、 >>> 'ello' in 'hello world' True >>> 'no' in 'hello' False サブストリングの最初のインデックスも必要な場合は、find(substr)を使用してインデックスを検索できます。このメソッドが-1を