如何从模块而不是命令行传递多个参数到函数?



我使用这个脚本:https://developers.google.com/youtube/v3/docs/videos/insert

我可以从命令行运行它,没有问题,像这样(例如):

python3 upload_youtube.py——file file_to_upload.mp4

我想从另一个调用这个模块,所以我写这个简单的脚本:

import upload_youtube        
upload_youtube.initialize_upload(['youtube', 'options'])

但是当我执行它时,我得到了这个错误:

TypeError: initialize_upload() missing 1 required positional argument: 'options'
我尝试在调用中直接使用参数,如下所示:
upload_youtube.initialize_upload(['youtube', "--file 'video.mp4'"])

但它确实有效…我得到了相同的错误,所以我做错了,但我不知道是什么。

我很感激你的帮助。

谢谢。

由于我们不知道upload_youtube.py或其中的方法是什么(我没有在您包含的链接中看到该模块),我们只能猜测。

因此,我的猜测是你调用的方法期望参数作为单独的项,而不是一个列表,这就是为什么你错过了一个参数。因此,请尝试:

upload_youtube.initialize_upload("youtube", "options")

,看看结果如何

最新更新