2017-09-13 14 views
0

私はhandshake.pyという名前のファイルを持っています。関数send_data(引数)があるところ。その関数をsiptest.pyという別のファイルにインポートしたいと思います。私は2つの問題に直面しています。私はWindows 7、64ビットのMicrosoft Visual Studioを使用しています。 1)機能をインポートできません。私は使用しようとしましたPython:another.pyファイルから関数をインポートできません

from handshake import* 
handshkae.send_data(argument) 

私にエラーが発生します。

NameError: global name 'handshake' is not defined 

私が試してみました別のオプションは、私の属性のエラーを与える

import handshake 
handshake.send_data(argument) 

を使用しています。私はそれを他の方法を使用している場合

AttributeError: 'module' object has no attribute 'send_data' 

、など

from handshake import send_data 

2)MS Visual Studioが言います。テストは検出されませんでした。構成設定を確認してください。でも、何とかテストを実行できます。インポートエラーのためテストが失敗したと表示されます。

ImportError: cannot import name send_data 

上記のファイルの両方が同じディレクトリにあります。プラスの機能はhandshake.py

答えて

0

にクラスのTCPhandshake 'で定義された両方のファイルが同じディレクトリにあるとしてみてくださいことを確認してください:

from handshake import send_data 

これが機能しない場合、handshake.pyの名前を変更してみてくださいファイル。

+0

最終行にいくつかの情報を編集しました。それを見てください。私の質問にもっと明快さを与えるだろうし、両方のファイルが同じディレクトリにあります。私は名前を変えてみました。両方の問題は私の質問で述べたように依然として存続します。 importErrorとMS Visual studioがテストの認識を停止する –

+0

あなたの関数がクラス内で定義されていることに気付かなかった。最初にクラスをインポートしてからクラスをインスタンス化してください:ファイルからインポートするTheClass theclass = TheClass() – Kirin

0

私は疲れて

修正/home/name/workspace/test.pyのpythonを使用して別のディレクトリからプログラムを実行しようとした一方で起こった同じ問題を持っていました。

これは最初に追加する必要があります。 これは私のために働く。

0

handshake.pysiptest.pyは同じディレクトリにありますか?

これを試すことができます: 1)__init__.py空のファイルをhandshake.pyを含むディレクトリに追加します。 2)次に、そのディレクトリへのパスをLD_LIBRARY_PATHとPYTHONPATHに追加します。

関連する問題