python3.x 类似cpp引用指针传参修改

#同名局部变量调用外部全局变量:

num=100
def fun():
  global num#告诉编译器是全局的num
num+=100
print(num)
print(fun)
print(fun())
#print(fun()) 局部变量没有初始化报错,局部变量覆盖全局变量,

#类似Cpp引用,返回值修改,全局变量,变量对象,类对象,其他

#在函数内修改没有办法返回

# -*- coding: utf-8 -*-
#return
def fun(x):
  x=x+1
  y=x+2
  return y


data=0
yData = fun(data)
print('use return: '+str(yData))
print(data)

#global
number=0
def changedata():
  global number
  number = 100


changedata()
print('use global: '+str(number))


# Variable object

def Variable_Object(data):
  data[0]=100
  array=[1,]


Variable_Object(array)
print('use Variable object: '+str(array[0]))

#class obejct
class Test:
  def __init__(self,x):
  self.a = x

def TestChange(arge):
  arge.a = 100

test = Test(2)
print(test.a)
TestChange(test)
print('use class object: '+str(test.a))
'''
equal c++ &
1.return
2.global
3.Variable Object
4.class object
'''

 tips:python没有自增!!

原文地址:https://www.cnblogs.com/liuruoqian/p/11308201.html