如何从字符串中删除单引号

时间:2013-09-25 22:25:28

标签: python string escaping quotes listdir

这是我的问题:

fpaths=os.listdir(ligand_names_list[0].replace("'", "\\'"))
OSError: [Errno 2] No such file or directory: "5-iodoindirubin-3\\'-oxime"

有一个名为5-iodoindirubin-3'-oxime的文件,但我无法让os.listdir()找到它。这是我用这个帖子Adding backslashes without escaping [Python]启发的另一个尝试:

fpaths=os.listdir(ligand_names_list[0].__ repr __())
OSError: [Errno 2] No such file or directory: '"5-iodoindirubin-3\'-oxime"'

在这种情况下的问题是领先的单引号,我不知道如何删除它们。有什么想法吗?

1 个答案:

答案 0 :(得分:6)

你不必逃避任何事情;在代码中输入字符串文字时,你只需要转义一旦字符串具有正确的值,就可以按原样使用它。

该文件是在当前目录中还是在其他目录中? (当前目录与Python脚本所在的目录相同,除非您已更改它。)如果它不在当前目录中,则可以解释为什么它没有被找到。

(你说这是一个文件;我希望它是一个目录,因为你在它上面调用os.listdir() ...)