我在列表中有特殊字符,它破坏了 SikuliX

I have special characters in list and it breaks SikuliX

我尝试将路径添加到列表中并且一切正常,直到我得到像 äö 这样的特殊字符。在字符串中,它们表示为字节,例如 ä\xe4。如果我在终端中使用相同的 Python 脚本,即使列表中的路径包含这些字节而不是实际字母,我也会正确打印出所有路径。

这是我提取所有文件名的代码:

def read_files(path):
    """
    Read all files in folder specified by path
    :param path: Path to folder which contents will be read
    :return: List of all files in folder specified by path
    """
    files = []
    for f in listdir(path):
        if isfile(join(path, f)):
            files.append(make_unicode(join(path, f)))
    return files

def make_unicode(string):
    if type(string) != unicode:
        string = string.decode('utf-8')
    return string

我不知道以后要去哪里。我已经尝试了几乎所有我能从 Google 找到的东西。这比 Python 更像是 SikuliX 问题,因为 Python 代码在 SikuliX 之外工作得很好。

我使用 Python 2.7 和 SikuliX 1.1.1。

所以我知道了。问题是,稍后再次调用 read_files(path) 函数,当 path 是带有特殊字符标记为字节的 unicode 时,整个事情就崩溃了。我以仅调用一次此函数的方式更改了我的代码,然后我就可以使用特殊字符了。