Bir değişkeni yerel kapsamdan nesne seviyesine taşımak istiyorum. Ben refactor çalıştı user
den self.user
için adlandırmak >>"user" dan "self.user" ye pyCharm ile refactor
class Foo(object):
def test_foo(self):
self.user=User() # I can remove this line by hand
...
self.user.do()
ama pycharm diyor:
class Foo(object):
def test_foo(self):
user=User()
...
user.do()
Yeni kod aşağıdaki gibi görünmelidir: yeni kod eskisi gibi self.user
değil user
kullanmalıdır "Eklenen tanımlayıcı geçerli değil "
Bunu pyCharm ile nasıl yeniden düzenleyebilirim? Yapmanız çalıştığımız şey
Yardımı nasıl * * Çıkar * Alan * çalışır. Değişkenin yapıldığı noktada, * foo * 'dan * self.foo *' ya kadar olan değişkeni değiştirir, fakat söyleyebildiğim kadarıyla kodun herhangi bir yerinde değişmez. Ayrıca, onu * bar * olarak çağırdığımda, metin giriş alanı * self.l * ile açılır ve * bar * 'ı yeniden yazmam gerekir. Bir şey bana doğru anlamadığımı söylüyor. İstediğim şey, * foo * 'yu * foo.bar * ile koddaki uygun yerlerin hepsine, hataya açık bir şekilde yapmak zorunda kalmadan değiştirmektir. * Bul/Değiştir " – garyp
PyCharm'ın yerel bir değişken olduğunu bilmenin bir yolu yoktur. aynı isim, yeniden adlandırdığınız ile aynı şekilde ele alınmalıdır. Farklı bir işleve sahip farklı bir işleve sahip bir "kullanıcı" olabilirsiniz. İstediğinizi bildiğim kadarıyla bir bul ve değiştir. Emin olmak için PyCharm'ın onay istemesini sağlayabilirsiniz. – Bakuriu