如何检测文件路径是否用Python包装在“..”中?

时间:2010-09-12 04:25:37

标签: python string

我读了ini文件在python中打开一个文件。 问题是文件信息有时在“..”内,但有时它不是。

例如,

fileA = "/a/b/c.txt"
fileB = /a/b/d.txt

有没有简单的方法来检测字符串是否包含在“..”中,并在引号内返回字符串?

2 个答案:

答案 0 :(得分:3)

简单的检测将涉及检查s[:1] == s[-1:] == '"'(仔细地用切片来表示它而不是索引以避免异常,如果s是一个空字符串),并且条件删除如果两端都有一个引用,那么两端的引用恰好是

if s[:1] == s[-1:] == '"':
    s = s[1:-1]

另外,正如他所说,@ Magnus的答案中的方法会删除所有前导和尾随引用,并且无条件地这样做;所以,例如,如果s以三个引号开头,但不以任何结尾(并且在所有其他奇怪的情况下,超出您所说明的规范),我的答案中的代码段将不会改变{ {1}},@ Magnus将删除三个主要引号。

“你付钱并且你选择了”...如果你不在乎这种或那种方式(即你确定两个答案不同的情况是“完全和完全不可能”...... 。),然后我认为@Magnus的更高抽象级别的方法更整洁(但是,这是一个风格问题 - 当你不关心无法匹配或不平衡的报价时,他的方法和我的方法都是正确的Python解决方案;-)。

答案 1 :(得分:2)

删除所有前导和尾随引号:

fileA = fileA.strip('"')