首先,我應該告訴我在Python中是全新手! 所以,我可能會試圖做一些不可能的事情,或者應該以不同的方式來完成某件事情。我無法在互聯網上找到任何有關它的例子。Python - 無法將元組作爲參數傳遞給另一個模塊
我在.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無法識別第二個參數,它的行爲就好像它不存在一樣! sys.argv是否使用了錯誤的函數?還有另一種方法來傳遞這些參數,包括一個元組嗎?
感謝所有提前:)
模塊不能被調用。你可以編寫一個函數並調用它。你讀過[Python教程](https://docs.python.org/3/tutorial/)嗎? – BrenBarn
不是我應該的。謝謝,我需要這個見解! – user00