̽

   
   ȸ 4585   õ 0    

안녕하세요

파이썬에서


def aaa():
    x = 11


def bbb():
    y = x + 13
    print(y)

bbb()


이렇게 짰다고 했을 때, aaa함수의 변수 x를 bbb에서 사용할 수 있게 하려면 어떻게 해야하는지 궁금합니다.

ª ϼ ϰ.
2017-02
def aaa():
    global x
    x = 11
     
2017-02
亯մϴ. ϽŴ غôµ ȵdz׿...

x global ð ȵǾ ִµ, Լaaa global x ص dz?
2017-02
3.0 Ʋ ..
ڹó ٲ մϴ.


def aaa():
    x = 11


def bbb():
    y = x + 13
    print(y)

x=0
bbb()
NeOpLe 2017-02
Լ ۿ ϰ,  global x ̷ Լ import ؾ մϴ.

x = 0

def aaa()
  global x
  x = 11
     
2017-02
Լۿ x = 0 ʰ,
Լ aaa ǵǾ ִ x = 11 ̰
Լ bbb ҷͼ, x ְԴ ϳ??
          
2017-02
ȭ ȿ ġ .
          
Ǽ 2017-02
̽ ,,
C/C++ 쿡 return · Լ ٸ Լ ֽϴ.
̽ ȵǷ?
2017-02
... ̽ ׸ ִ ̱.
³V 2017-02
ϽǷ
global Ͻø ˴ϴ
׸ Լ Ƿ ʱ⿡ ϼž ǰ, ׳ Ƿ
Լ return x ޾Ƽ ø ˴ϴ
׿ô 𸣴° ~~|
Wheein 2017-02
̽㿡 ⺻
1. local Ǿִ Ȯ
2. local global Ȯ
3. global undefined error
Ĩϴ.

׷ ̽ ⺻ ʱ
1. local Ǿ no problem
2. local Ǿ
  2-a. local
  2-b. global ִ
2-a 2-b ߿ 2-a 켱 ˴ϴ.
ٸ Լ ϱ ؼ global scope ϰ, aaa Լ "global " 2-b ġ ּž մϴ.

ƴϸ x ٲµ bbb x ٲ Ǵ° ̽ö, ̽ first-class function ȰϿ

>>> def make_bbb(x):
...    def _bbb():
...        y = x + 13
...        print (y)
...    return _bbb
...
>>> make_bbb(11)()
24
>>> make_bbb(20)()
33

α׷ Ͻ ֽϴ.


QnA
Page 1991/5664
2014-05   4900194   1
2015-12   1438761   ް
2017-03   3465   z
2017-03   6334  
2017-03   3212   cpu
2017-03   4167   cpu
2017-03   4250   ̰
2017-03   6485   ǿ
2017-03   8769   ڱڰ
2017-03   4042   ߵ̽
2017-03   3234   ̷
2017-03   3900   ູϼ
2017-03   4005  
2017-03   4176   ¿
2017-03   3486   ȸK
2017-03   5211  
2017-03   4330  
2017-03   4155   lovin09
2017-03   8124   cpu
2017-03   4178  
2017-03   5392   ̿
2017-03   5712   audacity