静的メソッドを持つクラスを含むPqr.pyという名前のPythonファイルがあります。他のクラスの静的メソッドをPythonで呼び出す
import subprocess
class Pqr:
@staticmethod
def callTheService(a,b,c):
subprocess.call(a,b,c)
他のPythonファイルにある別のクラスからこの静的メソッドにアクセスしようとしています。両方の.pyファイルは同じディレクトリにあります。二ファイル内のコードで、
import Pqr
class Rst:
Pqr.callTheService("a", "b", "c")
私はこれを実行しようとすると、私ははAttributeErrorのエラーが出ます:モジュール「PQR」には属性を持っていない「callTheService」
あなたは私が解決するのに役立つてもらえこのエラー?
は「Pqr.py」という名前のファイルですか?モジュールではなく*クラス*にアクセスする必要があるので、 'Pqr.Pqr.callTheService'を使用してください。 Pythonでは、通常、モジュールにクラスと同じ名前を付けません(Python!= Java)。ところで、Pythonの命名規則に従えば、これはもっと明らかです。一般的に、モジュール名には 'lower_case'を使い、' camelCase'は絶対に避けてください! –
[Style Guide for Python Code](https://www.python.org/dev/peps/pep-0008/)へのリンクです。 – Matthias
うわー、@ juanpa.arrivillagaあなたは数分で私の問題を解決!ありがとう、トン。 – swarupmishal