女人天生喜欢什么花,星光游乐园吉他谱,桥本多三
以下实例通过用户输入两个变量,并相互交换:
def swap(a,b):
# 创建临时变量,并交换 temp = a a = b b = temp print(a,b)
以上实例中,我们创建了临时变量 temp ,并将 a 的值存储在 temp 变量中,接着将 y 值赋给 a,最后将 temp 赋值给 b变量。
方法二:
def swap2(a,b): # 不使用临时变量 a,b = b,a print(a,b)
python以引用方式管理对象,你可以交换引用,但通常不能交换内存中的对象值。
在函数中,因为a,b是int的对象是原子类型,是不可变参数,他们直接的“引用”是值传递,这里的引用应该是值传递。
方法三:
def swap3(a,b): """ ^异或运算 1^1=0 1^0=1 0^0=0 x^0=x x^x=0 """ a = a^b b = a^b # b = (a^b)^b = a a = a^b # a = (a^b)^a = b print(a,b)
异或运算,相同为0,不同为非0的数,例如1^1=0 1^0=1 0^0=0 x^0=x x^x=0
方法三中 a = a ^ b ,
b = (a^b)^b = a,
a = (a^b)^a = b
推荐第二种写法,因为这是python语言的特性。第三种写法,看起来就牛b,可以用来吹牛b,顺便装一b。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
新手学习Python2和Python3中print不同的用法
Python基于os.environ从windows获取环境变量
网友评论