图像未使用 pil 显示

Image not being displayed with pil

我正在尝试打开此目录中的图像,但无法打开。它给了我以下错误:

FileNotFoundError                         Traceback (most recent call last)
<ipython-input-27-1840203b5591> in <module>
      4 
      5 file = path+'\'+a
----> 6 Image.open(file).show()
      7 #files=os.listdir(path)
      8 #emoji=random.choice(files)

/usr/lib/python3/dist-packages/PIL/Image.py in open(fp, mode)
   2807 
   2808     if filename:
-> 2809         fp = builtins.open(filename, "rb")
   2810         exclusive_fp = True
   2811 

FileNotFoundError: [Errno 2] No such file or directory: '/home/laura/Desktop/TheLab/nft/Emojis\031-happy-2.png'

这是我的代码:

import os
from PIL import Image
import random
import numpy as np

path = r"/home/laa/Desktop/TheLab/nft/Emojis"
a=random.choice(os.listdir(path))
print(a)

file = path+'\'+a
Image.open(file).show()

我不知道每次打印 a 时发生了什么,它显示带有 .png 扩展名的图像名称,但稍后不显示。

您混合了 Linux 风格的 / 和 Windows 风格的 \ 路径分隔符。最简单的方法是使用

import os
...
file = os.path.join(path,a)

应该为您插入正确的字符,我认为它需要是 '/'。

目录分隔符错误。 而不是 '\\' 使用 '/' 这应该有效:

import os
from PIL import Image
import random
import numpy as np

path = r"/home/laa/Desktop/TheLab/nft/Emojis"
a=random.choice(os.listdir(path))
print(a)

file = path+'/'+a
Image.open(file).show()

如果这仍然不起作用,请尝试在 \home 之前添加以前的目录或驱动器。例如。 C:/Users/dr_de/Documents(整个路径)