python 3.2如何在函数之间传递变量中的数据 [英] python 3.2 how to pass data in variables between functions

查看:784
本文介绍了python 3.2如何在函数之间传递变量中的数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何存储并将主内容从r转换为r?如果我使r =固定,它会打印r,但是如何将可变内容传递并保存到r中。我尝试了random.getstate / setstate,但它说函数对象不可下载。

 从随机导入randrange 

导入随机
def main():
r = random.randrange(1,13,1)
print(r)

r = random.randrange(1,13,1)


def two():
if r == 7或r == 11:
print(r)
else:
print(r)

main()
two()


解决方案

那么,根据具体情况,您可能想要创建一个类或返回数据,然后将其作为参数传递,后者可能是您想要的代码,例如:

  def main():
...
r = do_something()
...
return r

def two(r):
...
do_something_else(r)
...

r = main()
two(r)

如果这发生在您可以定义为实体的东西内,在类中做:

  class Main():
def main(s elf):
...
self.r = do_something()
...

def two(self):
...
do_something_else(self.r)
...

main = Main()
main.main()
main.two()

然而,在这种情况下,这是不必要的,因为您正在创建一个没有真正封装任何内容的类。

How would I store and pass the contents of r from main into two? It will print r if I make it r = something fixed, but how do I pass and hold variable contents into r. I tried random.getstate/setstate but it was saying "function object not subscriptable".

import random
from random import randrange

def main():
    r = random.randrange(1,13,1)
    print (r)

r = random.randrange(1,13,1)


def two():
    if r==7 or r==11:
       print (r)
    else:
       print (r)

  main()
  two()

解决方案

Well, depending on the situation, you either want to make a class or return the data, then pass it in as an argument, the latter is probably what you want given your code, so, for example:

def main():
  ...
  r = do_something()
  ...
  return r

def two(r):
  ...
  do_something_else(r)
  ...

r = main()
two(r)

If this was happening within something you could define as an entity, you could do it in a class:

class Main():
  def main(self):
    ...
    self.r = do_something()
    ...

  def two(self):
    ...
    do_something_else(self.r)
    ...

main = Main()
main.main()
main.two()

However, in this case, this is unnecessary as you are creating a class that doesn't really encapsulate anything.

这篇关于python 3.2如何在函数之间传递变量中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆