亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python 3.6 的成像問題

Python 3.6 的成像問題

慕標琳琳 2021-07-29 17:16:23
我正在創建人工智能來用 Python 玩中國跳棋,但我什至無法顯示棋盤的圖像!我正在使用此代碼:from tkinter import *root = Tk()board = PhotoImage(file="board.ppm")root.mainloop()我收到以下錯誤:Traceback (most recent call last):  File "/Users/GAMEKNIGHT7/Desktop/genius hour/chineseCheckersAI(genius hour).py", line 3, in <module>    board = PhotoImage(file="board.ppm")  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/tkinter/__init__.py", line 3539, in __init__    Image.__init__(self, 'photo', name, cnf, master, **kw)  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/tkinter/__init__.py", line 3495, in __init__    self.tk.call(('image', 'create', imgtype, name,) + options)_tkinter.TclError: couldn't recognize data in image file "board.ppm"我將代碼文件放在與圖像相同的文件中。發生了什么?我該如何解決?
查看完整描述

1 回答

?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

嘗試在終端中運行以下命令:

file board.ppm

如果它里面有這個詞ASCII,那意味著你的圖像是未壓縮的 ASCII(NetPBM類型=3),Tkinter不會喜歡它:

board.ppm: Netpbm image data, size = 10 x 10, pixmap, ASCII text

如果您的文件正確,它將報告rawbitsNetPBM type=6):

board.ppm: Netpbm image data, size = 10 x 10, rawbits, pixmap

如果你想從 ASCII/P3 轉換為 binary/rawbits/P6,你可以像這樣用homebrew安裝ImageMagick

brew install imagemagick

然后像這樣轉換:

convert board.ppm -compress lossless board.ppm


查看完整回答
反對 回復 2021-08-03
  • 1 回答
  • 0 關注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號