class my_class
def is_same(self, arg1, arg2):
return arg1 == arg2
def a_function(self):
if is_same('a', 'b'):
print "They're the same"
Eclipseは、is_sameは未定義の変数であると教えてくれます。これはJavaでできると思います。
class my_class
def is_same(self, arg1, arg2):
return arg1 == arg2
def a_function(self):
if is_same('a', 'b'):
print "They're the same"
Eclipseは、is_sameは未定義の変数であると教えてくれます。これはJavaでできると思います。
is_mode
投稿されたコードのどこにもありませんが、別の問題、構文エラーがあります。
オリジナルの代わりに
print 'They're the same'
使用する:
print "They're the same"
""または''を使用して文字列を囲むことができます。ここでは、同じ文字列で3つを使用しています。文字列を囲むために「」を使用する場合は、「」をエスケープする必要はありません。
更新:持っていることに何も問題はありません
return arg1 == arg2
関数では、期待どおりにブール値を返します。
self.is_same()
これらの関数はクラス内にあるため、言う必要がありました。言う必要のないJavaから来てthis.method()
、私は混乱しました。
ほとんどの場合、pydev(あなたが使用していると思います)が再びディックになっています。すぐにすべてを再読み込みせず、ソースが既に完了している場合に警告を表示し続けるか、誰かが定義されていることを (まだ) 知らないために警告を表示することがあります。ファイルを保存すると役立つことがよくあります。少なくとも、プロジェクトの「再構築」で忙しくなければ。
引用エラー以外に、コードは完全に問題なく、意図したとおりに機能します。
>>> def is_same(arg1, arg2):
... return arg1 == arg2
...
>>> def a_function():
... if is_same('a', 'b'):
... print "They're the same"
...
>>> a_function()
>>>
ただし、本当に function が必要な場合は、次のis_same
ように記述せずにインポートします。
from operator import eq as is_same