Python将char连接到列表

时间:2018-08-07 10:52:10

标签: python concatenation string-concatenation

初始输入为:

input = [60, 20, 50, 70, …, 90]  # ASCII characters

我想要这样的输出:

f_paths = ['/ev/path1', '/ev/path2']

通过连接字符串将ASCII字符更改为文本。

paths = ''.join([chr(i) for i in input if chr(i) not in '<,'])

现在路径字符串如下所示:

  

paths = / notpath / exclude> / ev / path1> / ev / path2>

现在,我要排除不需要的初始路径并保存其余路径

start = len(paths[0:paths.find(">")]) + 1
f_paths = []
g=''
for x in paths[start:]:
    if x != '>':
        g = g + x
    else:
        f_paths.append(g)
        g = ''

输出是预期的输出,但是必须有一种更好的方法来执行for循环,问题是我不知道如何。

2 个答案:

答案 0 :(得分:1)

您可以这样做:

paths='/notpath/exclude>/ev/path1>/ev/path2>'
f_paths = paths.split('>')[1:-1]

输出:

['/ev/path1', '/ev/path2']

答案 1 :(得分:0)

您可以使用regex

import re

paths = '/notpath/exclude>/ev/path1>/ev/path2>'
print(re.findall(r'(?<=>).*?(?=>)', paths))

# ['/ev/path1', '/ev/path2']