【发布时间】:2017-04-21 07:52:49
【问题描述】:
我正在尝试从此目录中打开图像,但无法打开。 它给了我以下错误:
WindowsError: [错误 123] 文件名、目录名或卷 标签语法不正确。
这是我的代码:
import os, random
random.choice(os.listdir("C:\\Users\rkp10\AppData\Local\Google\Chrome\User Data\Default\Extensions\laookkfknpbbblfpciffpaejjkokdgca\0.91.6_0\backgrounds"+'png'))
在这里,文件夹背景中有很多图像。我想打开一个随机图像。但是在运行程序时,我得到WindowsError。
我做错了什么?
编辑 1
我试过了:
random.choice(os.listdir(r"C:\Users\rkp10\AppData\Local\Google\Chrome\User Data\Default\Extensions\laookkfknpbbblfpciffpaejjkokdgca\0.91.6_0\backgrounds"+'png'))
但我得到了错误:
WindowsError: [错误 123] 文件名、目录名或卷 标签语法不正确: 'C:\Users\rkp10\AppData\Local\Google\Chrome\User Data\Default\Extensions\laookkfknpbbblfpciffpaejjkokdgca\0.91.6_0\backgrounds\*.png/.'
编辑 2
我试过了:
import os, random
a=random.choice(os.listdir(r"C:\Users\rkp10\AppData\Local\Google\Chrome\User Data\Default\Extensions\laookkfknpbbblfpciffpaejjkokdgca\0.91.6_0\backgrounds"))
os.open(a)
现在我没有收到错误,但它也没有打开图像。
编辑 3
我也试过了:
import random,os
folder= "C:\\Users\rkp10\AppData\Local\Google\Chrome\User Data\Default\Extensions\laookkfknpbbblfpciffpaejjkokdgca\0.91.6_0\backgrounds"
a=random.choice(os.listdir(folder))
print(a)
from PIL import Image
file = folder+'\\'+a
Image.open(file).show()
#os.open(a, os.O_RDWR)
from PIL import Image
file = folder+'\\'+a
Image.open(file).show()
但又出现如下错误:
Traceback(最近一次调用最后一次):文件“G:\Grade 12 Project\auto.py",第 4 行,在 a=random.choice(os.listdir(folder)) WindowsError: [错误 123] 文件名、目录名或卷标语法不正确: 'C:\Users\rkp10\AppData\Local\Google\Chrome\User 数据\默认\扩展\laookkfknpbbblfpciffpaejjkokdgca'
这里(黄色高亮部分)是存储我的图像的目录。
【问题讨论】:
-
你有未转义的反斜杠。除非 Python 以不同方式处理,否则您需要在每个现有反斜杠之后添加第二个反斜杠,或者将它们设为正斜杠。
-
@Carcigenicate,我尝试了你所说的但得到了错误(我已编辑)
-
编辑 2 对我来说很好用,你确定给你的目录结构不包含任何错别字吗?
-
@ABcDexter 会为你打开图片吗?
-
不,它没有。但是还有其他方法起作用,将其写为答案。
标签: python python-2.7 directory operating-system windowserror