I'm writing an extension for Tkinter, and conflicted on which naming style I should use for some new attributes I'm going to add.

This is the first naming style, giving all the new attributes the prefix `sw_`.

```
import Tkinter as tk

class New (tk.Button, object) :
    def __init__ (self, par) :
        tk.Button.__init__(self, par)

        attrnames = ['attr0', 'attr1', 'attr2', 'attr3']

        for name in attrnames :
            newname = 'sw_' + name
            setattr(self, newname, None)

root = tk.Tk()

new = New(root)
new.pack()

new.sw_attr0

root.mainloop()

```

For the second naming style I made all the new attributes attributes of the `SW` class. Then I made an instance of `SW` an attribute of my new class. 

```
import Tkinter as tk

class SW (object) :
    def __init__ (self) :
        attrnames = ['attr0', 'attr1', 'attr2', 'attr3']

        for name in attrnames :
            setattr(self, name, None)

class New (tk.Button, object) :
    def __init__ (self, par) :
        tk.Button.__init__(self, par)

        self.sw = SW()

root = tk.Tk()

new = New(root)
new.pack()

new.sw.attr0

root.mainloop()

```