2017-07-05 3 views
0

すべてのコードを書かずにファイルをインポートするだけで他のコードで使うカスタム関数helloを出力するhello()という関数を定義していますが、二次ファイルで呼び出すときにhello()が定義されていないと言います。Python - 関数ライブラリを作成していますが、私の関数が2次ファイルに定義されていないと言います

open()コマンドは(主に)読み出しまたは書き込みにテキストとしてファイルを開くためには 'Pythonのlibrary.py'

def hello(): 
    print("Hello") 

'ライブラリtest.py'

myfile = open('python library.py', 'a') 

hello() 
+0

異なるファイルから関数を呼び出すには、 'import'を使用する必要があります。あなたがここで何をしているのかは、ファイルread/writeだけです。 – PYA

+0

'open(<>)を実行すると、読み書きのためにファイルがオープンされるだけです。これはあなたのモジュールをまったく読み込まない。それは 'import'文のためのものです。 –

+0

インポートの構文を使用する例を教えてください –

答えて

0

'a'は、ファイル '' python library.py 'にテキストを追加したいと言っています

ファイルから関数を取得するには、importを使用することをお勧めします。

from file import function

あなたのケースで

from python library import hello 
#NOTE the .py is left off 
hello() 

インポートする複数の機能を持っている場合は、代わりにimport functionimport *を行うことができます。これでファイル名に空白があるかどうかわからないので、エラーが出たら、私の最初の提案は、アンダースコアなどを使ってファイル名を変更して1つの単語にすることです。

詳細情報:How to call a function from another file in Python?

+0

注:私はpython 3と仮定しています –