Python:Image的路径作为原始字符串,是函数的输入

时间:2018-02-07 07:44:08

标签: python string image

Python:我希望将图像作为原始字符串从用户输入!我用input()来获取路径。将它作为原始字符串使程序运行,我可以通过在路径前附加r来实现,但Image.open(' ')也将r作为字符串并产生错误。有人可以帮我解决这个问题。

path=input('Please enter the path of the image')
im=Image.open(path)

在没找到文件的情况下收到错误

如果我给..

y='r'+path
im=Image.open(y)

然后错误是

OSError: [Errno 22] Invalid argument: 'rC:\\Users\\User\\Desktop\.......jpeg'

我是python的新手,所以如果有任何方法可以解决这个问题,请帮助我。

1 个答案:

答案 0 :(得分:0)

原始字符串是为了程序员的方便;您不必让您的用户输入原始字符串作为正常输入。

有关问题的解决方案,请参阅本文末尾。因为你说你是Python的新手,所以我决定在这里给出一个详细的答案。

为什么是原始字符串?

普通字符串为\(反斜杠)字符赋予特殊含义。这很好,因为\可以使用\\(两个反斜杠)来表示单个反斜杠。

然而,这有时会变得丑陋。

例如,考虑路径:C:\Users\Abhishek\test.txt。要在Python中将其表示为普通字符串,必须转义所有\

string = 'C:\\Users\\Abhishek\\test.txt'

您可以使用原始字符串来避免这种情况。原始字符串不会特别处理\

string = r'C:\Users\Abhishek\test.txt'

就是这样。这是原始字符串的唯一用途,即方便。

解决方案

如果您使用的是Python 2,请使用raw_input代替input。如果您使用的是Python 3(就像您应该的那样),input就可以了。 请勿尝试将路径作为原始字符串输入。