本人想用os模块实现随机引用路径中的jpg文件失败,求大神帮忙纠错
import win32print
import win32ui
from PIL import Image, ImageWin
from random import shuffle
import os
printer_name = win32print.GetDefaultPrinter()
for i in range(1):
pth = r"C:/Users/77594/Desktop/test"
files = [os.path.join(pth, fle) for fle in os.listdir(pth) if fle.endswith(".jpg")]
shuffle(files)
hDC = win32ui.CreateDC()
hDC.CreatePrinterDC(printer_name)
bmp = Image.open(files)
scale = 1
w,h = bmp.size
hDC.StartDoc(files)
hDC.StartPage()
dib = ImageWin.Dib(bmp)
dib.draw(hDC.GetHandleOutput(),(10,20,320,480))
hDC.EndPage()
hDC.EndDoc()
hDC.DeleteDC()
或者是用 f = random.choice(files)
import win32print
import win32ui
from PIL import Image, ImageWin
import random
import os
printer_name = win32print.GetDefaultPrinter()
for i in range(1):
pth = r"C:/Users/77594/Desktop/test"
files = [os.path.join(pth, fle) for fle in os.listdir(pth) if fle.endswith(".jpg")]
f = random.choice(files)
hDC = win32ui.CreateDC()
hDC.CreatePrinterDC(printer_name)
bmp = Image.open(f)
scale = 1
w,h = bmp.size
hDC.StartDoc(f)
hDC.StartPage()
dib = ImageWin.Dib(bmp)
dib.draw(hDC.GetHandleOutput(),(10,20,320,480))
hDC.EndPage()
hDC.EndDoc()
hDC.DeleteDC()
files 是列表,shuffle(files)随机打乱后还是列表
你打开 files 列表中第一个文件即可
bmp = Image.open(files[0])
scale = 1
w,h = bmp.size
hDC.StartDoc(files[0])
您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~
ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓
【电脑端】戳>>> https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】 戳>>> https://mall.csdn.net/item/52471?utm_source=1146287632