[英]Python - Class Scope
我有一個很棒的python類。
但是,我需要替換另一個類中的函數作為我的類的一部分。
class myclass:
def display(self, jobid): #Self here is referencing my class
zoom = NavigationToolbar2.zoom
def new_zoom(self, *args, **kwargs):
if self.blurEnabled: #Self is referencing NavigationToolbar2 Instance instead of my class
self.toggleBlur() #Self is referencing NavigationToolbar2 Instance instead of my class
zoom(self, *args, **kwargs)
NavigationToolbar2.zoom = new_zoom
這里的代碼很好用,除了我無法訪問自己的類,因此我自己的功能失敗。 有人能幫忙嗎?
原因是變量self
在您的內部作用域中過載。 嘗試重命名,例如
class myclass:
def display(self, jobid): #Self here is referencing my class
zoom = NavigationToolbar2.zoom
def new_zoom(toolbar, *args, **kwargs):
...
NavigationToolbar2.zoom = new_zoom
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.