首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AttributeError:'PhotoImage‘对象没有属性'_PhotoImage__photo’(im使用枕头图像,仍然没有)

AttributeError:'PhotoImage‘对象没有属性'_PhotoImage__photo’(im使用枕头图像,仍然没有)
EN

Stack Overflow用户
提问于 2022-07-31 02:26:45
回答 1查看 138关注 0票数 0

我看遍了每一个人,我不知道为什么:

代码语言:javascript
复制
image= Image.open(path+'test/test_'+lookingAt+'.png')
im= ImageTk.PhotoImage(image=image)

给我这个错误:

代码语言:javascript
复制
   name = self.__photo.name
AttributeError: 'PhotoImage' object has no attribute '_PhotoImage__photo'
EN

回答 1

Stack Overflow用户

发布于 2022-07-31 04:10:35

表单__spam的任何标识符(至少两个前导下划线,最多一个尾随下划线)将文本替换为_classname__spam,其中类名是当前类名,去掉了前导下划线。这种损坏不考虑标识符的语法位置,因此可以用来定义类私有实例和类变量、方法、全局存储变量,甚至是存储在实例中的变量。对于其他类的实例,这个类是私有的。名称损坏的目的是为类提供一种简单的方法来定义“私有”实例变量和方法,而不必担心派生类定义的实例变量,也不必担心类之外的代码处理实例变量。请注意,故障规则的设计主要是为了避免意外;仍然可以让一个确定的灵魂访问或修改一个被认为是私有的变量。

异常可能不会发生在您提供的代码中。

代码语言:javascript
复制
>>> import tkinter as tk
>>> root = tk.Tk()
>>> from PIL import Image, ImageTk
>>> im = Image.open('d:/01.png')
>>> image = ImageTk.PhotoImage(image=im)
>>> image.__photo
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'PhotoImage' object has no attribute '__photo'
>>> image._PhotoImage__photo
<tkinter.PhotoImage object at 0x00000232139BB5B0>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73180291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档