python中在类之间传递变量

python中在类之间传递变量,python,Python,我有以下代码: class VM(): def __init__(self): global vmitems,vmappid vmitems = {'url' : 'stuff','vmid' : '10'} def create(self, **vmitems): appurl = vmitems.get('url') vmappid = vmitems.get('vmid')

我有以下代码:

class VM():
    def __init__(self):
        global vmitems,vmappid
        vmitems = {'url' : 'stuff','vmid' : '10'}

    def create(self, **vmitems):
           appurl = vmitems.get('url')
           vmappid   = vmitems.get('vmid')
           vmitems.update(vmid=vmappid)
           vmitems.update(url=appurl)
           print 'New URL: '+appurl
           print 'New ID: '+vmappid
           print 'NEW LIST: ',vmitems
           return vmitems

    def delete(self, **vmitems):
           appurl = vmitems.get('url')
           vmappid   = vmitems.get('vmid')
           print 'do stuff'

action = VM()
action.create(url='https://www.google.com', vmid='20')
action.delete(url='urlhere',vmid='20')
print 'New List: ',vmitems
我想知道是否有人能告诉我如何将
vmitems
的值传递给其他类/函数

更新:更正。问题是并没有使用self,也并没有传递它们(很抱歉,仍然在学习,而且对python还是新手)

类VM(): 定义初始化(自): self.vmitems={'url':'stuff','vmid':'10'} def创建(自我,**vmitems): 打印“原件:”,self.vmitems appurl=vmitems.get('url') vmappid=vmitems.get('vmid') self.vmitems.update(vmid=vmappid) self.vmitems.update(url=appurl) 打印“新URL:”+appurl 打印“新ID:”+vmappid 打印“新列表:”,vmitems 返回self.vmitems def删除(自我): 打印“删除前:”,self.vmitems self.vmitems.update(vmid='30') self.vmitems.update(url='newurl') 返回self.vmitems def shownow(自我): 打印“删除后:”,self.vmitems
我建议您在代码中使用一种不同的方法,它需要一些更改,但我认为它会更易于使用

如果是针对类内的方法,只需使用
self

class VM():
    def __init__(self):
        self._vmitems = {'url' : 'stuff','vmid' : '10'}

    def some_func():
        print self._vmitems 
如果您希望其他类可以使用它,我将使用:


这里没有使用单个实例变量。我想你可能误解了课程的目的。你到底想做什么?@Andrew我有多个相互依赖的课程。举个例子。我创建了一个具有id、名称的虚拟机,然后是具有自己的id/名称的存储,该id/名称与虚拟机无关,然后是具有自己的id/名称的网络,该网络与虚拟机无关,然后将存储/网络连接到虚拟机(使用id),以便在创建存储时可以将id值传递回createVM进程。我希望这是有意义的。虚拟机->网络
class VM():
    def __init__(self):
        self._vmitems = {'url' : 'stuff','vmid' : '10'}

    def some_func():
        print self._vmitems 
class VM():
    def __init__(self):
        self._vmitems = {'url' : 'stuff','vmid' : '10'}

    @property
    def get_vmitems(self):
        print("Getting vmitems")
        return self._vmitems