乐趣区

关于python:Python经典面试题交换两个数字三种解法

题目要求:

  1. 有两个整数变量 a = 5, b = 10
  2. 不应用其余变量,替换两个变量的值

解法一:应用其余变量

a = 5
b = 10

# 解法一:应用其余变量
# 定义一个两头变量 c
c = a # c = 5
a = b # a = 10
b = c # b = 5

# 打印看后果
print(a)
print(b)

执行后果:

应用一个两头变量 c,而后让 a 的值赋值给变量 c,此时变量 c 的值是 c = 5,再把变量 b 的值 10 赋值给变量 a,此时变量 a 的值是 a = 10,最初把变量 c 的值 5 赋值给变量 b 变量 b 的值是 b = 5。

解法二:不应用长期变量

a = 5
b = 10

# 解法二:不应用其余变量
a = a + b # a = 5 + 10 = 15
b = a - b # b = 15 - 10 = 5
a = a - b # a = 15 - 5 = 10


# 打印看后果
print(a)
print(b)

执行后果:

这个办法可能不是特地好了解,没关系,多看看下面的代码,尝试着多了解几遍就能够了。

解法三:Python 专有,利用元组

a = 5
b = 10

# 解法三:Python 专有,利用元组
# a, b = (b, a) # 能够省略元组的小括号
# 等号左边是一个元组,只是把小括号省略了
a, b = b, a


# 打印看后果
print(a)
print(b)

执行后果:

利用变量和元组,顺次把元组中的元素传递给绝对应的变量。所以,等号右侧是一个元组,等号左侧是多个变量,咱们用多个变量来接管元祖,在接管的过程中就会把元祖中第一个元素元递给第一个变量,把支援中国第二个元素传递给第二个变量,以此类推。

留神:如果元组中元素个数和变量的个数不相等会报错。

还有更多的 Python 练习题在 python 自学网 ,感兴趣的话大家能够去瞅一瞅,练习本人的开发思维。

文章借鉴起源:
www.wakey.com.cn/article-list-100.html

退出移动版