字符串以错误字符打印。例如。python解释器以错误的方式获取字符串
我是python新手。以下是代码我无法获得正确的字符串,我只想在以下代码中获得截止日期的字符串:字符串以错误字符打印。例如。python解释器以错误的方式获取字符串,python,string,python-2.7,Python,String,Python 2.7,我是python新手。以下是代码我无法获得正确的字符串,我只想在以下代码中获得截止日期的字符串: def ExtractMail(): mailString=str(".\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350") print mailString index=mailString.rfind("\\",0,(mailString.rfind("\\")-1)) print index print
def ExtractMail():
mailString=str(".\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350")
print mailString
index=mailString.rfind("\\",0,(mailString.rfind("\\")-1))
print index
print mailString[0:index]
ExtractMail()
我得到的输出是:
.\Attachments\Treated�6-11-22\ISCD\ACCEPT-A350
29
.\Attachments\Treated�6-11-22
我正在寻找的输出
\Attachments\Treated\2016-11-22\ISCD\ACCEPT-A350
29
.\Attachments\Treated\2016-11-22
您应该在以下内容中避开反斜杠:
您应该在以下情况下避开反斜杠:
使用字符串前面的
r
按原样处理字符串:
def ExtractMail():
mailString=str(r".\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350")
print mailString
index=mailString.rfind("\\",0,(mailString.rfind("\\")-1))
print index
print mailString[0:index]
ExtractMail()
输出将是:
.\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350
33
.\\Attachments\Treated\2026-11-22
编辑:如果此字符串作为变量来自某个函数(让我们调用此函数f\u out
),则可以执行以下操作:
def ExtractMail():
mailString=str("%r" % f_out())
print mailString
index=mailString.rfind("\\",0,(mailString.rfind("\\")-1))
print index
print mailString[0:index]
ExtractMail()
使用字符串前面的
r
按原样处理字符串:
def ExtractMail():
mailString=str(r".\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350")
print mailString
index=mailString.rfind("\\",0,(mailString.rfind("\\")-1))
print index
print mailString[0:index]
ExtractMail()
输出将是:
.\\Attachments\Treated\2026-11-22\ISCD\ACCEPT-A350
33
.\\Attachments\Treated\2026-11-22
编辑:如果此字符串作为变量来自某个函数(让我们调用此函数f\u out
),则可以执行以下操作:
def ExtractMail():
mailString=str("%r" % f_out())
print mailString
index=mailString.rfind("\\",0,(mailString.rfind("\\")-1))
print index
print mailString[0:index]
ExtractMail()
不太清楚你在追求什么,但你应该避开你的反斜杠
\
将转义以下字符,在这种情况下,\2
将转义数字“2”。对每个反斜杠尝试“\”。另外,如果您可以编辑您的问题以包含所需的输出(您希望字符串看起来像什么,那就好了)。202
被视为八进制值。是的,我知道这个问题,但我无法找到解决方案。我不太确定您想要的是什么,但您可能应该避免反斜杠\
将转义以下字符,在这种情况下,\2
将转义数字“2”。对每个反斜杠尝试“\”。另外,如果您可以编辑您的问题以包含所需的输出(您希望字符串看起来像什么,那就太好了).202
被视为八进制值。是的,我知道这个问题,但我找不到解决方案。如果我将mailString作为函数的参数,该怎么办?我已经尝试了您所说的,但打印时仍然得到相同的输出更新了答案。您应该使用%r
而不是r“{}”.format()
语法。在使用%r is“'。\\Attachments\\Treated\x816-11-22\\ISCD\\ACCEPT-A350'”之后,我得到了输出。很抱歉,不知怎的错过了这一点。经过一番挖掘,发现这是不可能的。当您从某个函数中获取字符串时,它已经被解释,并且您无法将其返回到原始状态。如果我将mailString作为函数的参数,该怎么办?我已经尝试了您所说的内容,但在打印时仍然获得相同的输出更新了答案。您应该使用%r
而不是r“{}”.format()
语法。在使用%r is“'。\\Attachments\\Treated\x816-11-22\\ISCD\\ACCEPT-A350'”之后,我得到了输出。很抱歉,不知怎的错过了这一点。经过一番挖掘,发现这是不可能的。当您从某个函数中获取字符串时,它已被解释,并且您无法将其返回到原始状态。抱歉,我不能这样做,实际上此字符串将作为函数的参数在变量中出现抱歉,我不能这样做,实际上此字符串将作为函数的参数在变量中出现