私はその完全修飾名を参照することによって、それをインポートせずに、クラスやメソッドを呼び出すことができます。完全修飾名を使用してPythonメソッドを呼び出す方法は? Javaでは
public class Example {
void example() {
//Use BigDecimal without importing it
new java.math.BigDecimal(1);
}
}
同様の構文は、明らかにパイソンを使用して動作しません。
class Example:
def example(self):
# Fails
print(os.getcwd())
グッドプラクティスとPEP勧告を除いて、私はPythonで同じことをすることはできますか?
いいえ、クラスやメソッドをインポートせずに呼び出すことはできません。なぜ、インポートを避けたいのですか? PythonでJavaライナーを2行に変更するだけで、関数内でローカルにインポートすることができます。それはあなたが避けようとしている唯一のものですか? – mgilson
私はいくつかのASTベースのコードインジェクションで遊んでいるので、私はワンライナーを気に入っています。元のモジュールをできるだけ修正したくはありません – noamt