【发布时间】:2017-02-04 18:42:53
【问题描述】:
我在将我的 Linux 技能转换为 python 时遇到了一些问题。任何指向正确方向的指针都将不胜感激。
概述
我有 2 个动态创建的列表;列表中的项目数量可能会根据许多不同的因素而变化。 为了这个例子,我创建了 2 个静态列表来表示从其他地方(file_root 和 docs_directory)提取的数据:
def find_directory_function():
global full_path
file_root = ['/home/work'] #number of values here can change!
# number of values below can change!
docs_directory = ['important.docs/','random.directory/', dev.stuff/]
PATH = []
full_path=[]
for i in docs_directory:
PATH = file_root.join(i)
full_path.append(PATH)
print full_path
find_directory_function()
期望
我希望输出是具有以下值的另一个数组(full_path):
full_path = ["/home/work/important.docs/",
"/home/work/random.directory/",
"/home/work/dev.stuff/",]
问题
-
正在引发以下异常:
Traceback (most recent call last): File "test.py", line 15, in <module> find_directory_function() File "test.py", line 11, in find_directory_function PATH = file_root.join(i) AttributeError: 'list' object has no attribute 'join' 即使我设法操纵字符串并将它们放入数组中,它们仍然会在连接值的中间缺少一个“/”(斜杠)。
【问题讨论】:
-
如果
file_root是一个列表,如何将文件与目录连接起来?有一个组合?产品? -
试试
os.path.join(root, i),file_root也应该是一个字符串,而不是字符串列表 -
我从您的评论中假设 file_root 目录的数量可以更改。那是对的吗?如果是这样,请参阅我的答案。
标签: python arrays python-2.7