我有一个由
创建的文件路径Path('filepath')
我想在文件路径的中间获取目录名称,并将其附加到列表中。 选择条件是字符串的特定部分。 我尝试过
list = []
list.append(x for x in str(filepath).split(os.sep) if 'part of a sting' in x)
我尝试过这个,但是当我只打印出来
print(x for x in str(filepath).split(os.sep) if 'part of a sting' in x)
它给了我生成器格式而不是文件路径的一部分
<generator object function.<locals>.<genexpr> at 0x7f23c8dd0258>
这是什么问题?
答案 0 :(得分:2)
您获得了生成器对象,因为您使用的是生成器表达式而不是列表推导。您可以阅读有关生成器表达式here
的更多信息尝试编写如下内容:
path_list = [x for x in str(filepath).split(os.sep) if 'part of a sting' in x]
print(path_list)