Python论坛  - 讨论区

标题:[python-chinese] 怎么使用上一级函数中的变量。

2007年01月17日 星期三 01:18

Leo Jay python.leojay在gmail.com
星期三 一月 17 01:18:22 HKT 2007

比方说我有一个如下的函数:

def foo1():
    a = 12
    def foo2():
        # 我想在这里改变a的值,应该怎么做?

谢谢。

-- 
Best Regards,
Leo Jay

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年01月17日 星期三 07:41

tocer tocer.deng在gmail.com
星期三 一月 17 07:41:16 HKT 2007

def foo1():
     a = 12
     def foo2():
         global a
         a = 5


Leo Jay wrote::
> 比方说我有一个如下的函数:
> 
> def foo1():
>     a = 12
>     def foo2():
>         # 我想在这里改变a的值,应该怎么做?
> 
> 谢谢。
> 

-- 
Vim 中文 Google 论坛 http://groups.google.com/group/Vim-cn

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年01月17日 星期三 09:00

jian hui zheng mayapainter在gmail.com
星期三 一月 17 09:00:36 HKT 2007

ÕâÑù×ӵĽṹÊDz»ÊÇŪ¸öclass±È½ÏºÃ?
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20070117/ced3f1f2/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年01月17日 星期三 10:58

yi huang yi.codeplayer在gmail.com
星期三 一月 17 10:58:17 HKT 2007

On 1/17/07, Leo Jay <python.leojay at gmail.com> wrote:
>
> 比方说我有一个如下的函数:
>
> def foo1():
>     a = 12
>     def foo2():
>         # 我想在这里改变a的值,应该怎么做?
>
> 谢谢。
>
> --
> Best Regards,
> Leo Jay
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese


以后会解决,你可以看下 PEP 3104 <http://www.python.org/dev/peps/pep-3104/> 。
我写了点简单的中文介绍:http://wiki.woodpecker.org.cn/moin/Python3000

-- 
http://codeplayer.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://python.cn/pipermail/python-chinese/attachments/20070117/86505ee7/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年01月17日 星期三 12:24

yi huang yi.codeplayer在gmail.com
星期三 一月 17 12:24:57 HKT 2007

On 1/17/07, Leo Jay <python.leojay at gmail.com> wrote:
>
> 比方说我有一个如下的函数:
>
> def foo1():
>     a = 12
>     def foo2():
>         # 我想在这里改变a的值,应该怎么做?
>
> 谢谢。
>
> --
> Best Regards,
> Leo Jay
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese


忘了说了,关于这一点还有一个小技巧可以用:

def foo1():
  a = [12]
  def foo2():
    a[0] = 13

这样就可以修改外层名字空间中的 a 了。

-- 
http://codeplayer.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://python.cn/pipermail/python-chinese/attachments/20070117/faeeaede/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号