使用我想转换为字符串的未初始化变量调用函数

Calling a function with an uninitialised variable that I want to convert to a string

我对一个可能很简单的问题有点困惑。可能有几种方法可以解决这个问题,所以我想我会把它开放给 Whosebug 来建议一些不同的方法。我的代码如下:

import os


root_directory = ('C:/path/to/files/')


def directories(*dirs):
    for directory in dirs:
        print(os.path.join(str((root_directory, directory))))


directories(inbox, test)

我想要这个 return:

('C:/path/to/files/inbox')
('C:/path/to/files/test')

但我得到了回溯:

Traceback (most recent call last):
  File "C:/path/to/files/python_file.py", line 24, in <module>
    directories(inbox, test)
NameError: name 'inbox' is not defined

我不想用参数作为字符串来调用函数,即 directories('inbox', 'test')

我正在尝试创建此函数,它会根据调用函数的方式查看数量可变的子目录。所以我可能会调用 directories(inbox),它会在收件箱文件夹中查找,或者我可能会调用 directories(inbox, test),它会在收件箱和测试文件夹中查找。

如有任何帮助/建议,我们将不胜感激!

这将为您提供所需的输出: 这是您可以获得的最终输出

import os
root_directory = ("C:/Users/vjadhav6/Desktop/")
def directories(*dirs):
    for directory in dirs[0]:
        print(os.path.join(str(root_directory) , directory))

d = {"inbox":"inbox","test":"test"}
directories(d.values())

import os
root_directory = ("C:/Users/vjadhav6/Desktop/")
def directories(*dirs):
    for directory in dirs[0]:
        print(os.path.join(str(root_directory) , directory))
inbox = "inbox"
test = "test"
directories(inbox, test)