まず、私はPythonで全く新しい人だと言わなければなりません! 私は、不可能な何かをしようとしているかもしれないし、別のやり方でやるべきことがあるかもしれない。私はインターネット上でそれについての例を見つけることはできません。Python - タプルを別のモジュールの引数として渡せません
私は2つのモジュールを.pyで持っています。 server.pyとdelay_simulator.py。私はサーバーからdelay_simulatorを呼び出すときに引数としてタプルを渡したいと思います。しかし、私は、delay_simulatorモジュールでタプル引数を受け取ることができません。
以下のコードを入力します。タプルはpkt_recvであることに注意してください。
server.py(コードのほんの一部)
import delay_simulator
from collections import namedtuple
pkt = namedtuple("pkt", ["seq_num", "pkt_type", "data"])
. . .
# !!! - Here is where I call the other module and try to pass the tuple pkt_recv
returned_object = delay_simulator ("string", pkt_recv, prob_loss, rtt, average_delay)
delay_simulator.py(コードのほんの一部)
import sys
from collections import namedtuple
pkt = namedtuple("pkt", ["seq_num", "pkt_type", "data"])
. . .
caller = str(sys.argv[1])
# !!! - Here is where I can't receive the tuple
pkt_recv = pkt(sys.argv[2])
prob_loss = float(sys.argv[3])
rtt = float(sys.argv[4])
average_delay = float(sys.argv[5])
私はプログラムserver.pyを実行すると、 、delay_simulator.pyモジュールは第2引数を認識できず、存在しないかのように振る舞います! sys.argvが間違った機能を使用していますか?タプルを含むこれらの引数を渡す別の方法はありますか?あなたは次の1つのモジュールから変数を渡したい場合は、すべて事前に
おかげで:)
モジュールを呼び出すことはできません(コードのほんの一部)
delay_simulator.py(コードの部分だけ)。関数を記述して呼び出すことができます。 [Pythonチュートリアル](https://docs.python.org/3/tutorial/)を読んでいますか? – BrenBarn
私はそうではありません。ありがとう、私はこの洞察力が必要でした! – user00