小能豆

如何在 Python 中交换 4 个值?

python

我的实验室要求我取四个整数,并将第一个值与第二个值交换,第三个值与第四个值交换。当输入是 4 个整数时,我已经能够使用以下代码完成此工作,但是当该函数作为输入调用时,不会返回任何内容。有人可以帮忙吗?

def swap_values(int1, int2, int3, int4):
    new1 = int2
    new2 = int1
    new3 = int4
    new4 = int3
    line = str(new1) + ' ' + str(new2) + ' ' + str(new3) + ' ' + str(new4)
    return line


if __name__ == '__main__': 
    start1 = input()
    start2 = input()
    start3 = input()
    start4 = input()
    answer = swap_values(start1, start2, start3, start4)
    print(answer)

阅读 120

收藏
2023-09-18

共1个答案

小能豆

你的代码几乎正确,但有一个小问题。你的 input() 函数返回的是字符串,而你的 swap_values 函数期望整数作为输入。因此,在调用 swap_values 函数之前,你应该将输入的字符串转换为整数。

你可以使用 int() 函数来实现这一点。以下是修复后的代码:

edef swap_values(int1, int2, int3, int4):
    new1 = int2
    new2 = int1
    new3 = int4
    new4 = int3
    line = str(new1) + ' ' + str(new2) + ' ' + str(new3) + ' ' + str(new4)
    return line

if __name__ == '__main__': 
    start1 = int(input())  # 将输入的字符串转换为整数
    start2 = int(input())
    start3 = int(input())
    start4 = int(input())
    answer = swap_values(start1, start2, start3, start4)
    print(answer)

现在,你的代码将正确地接受四个整数作为输入,并按照你的要求进行交换,然后输出结果。如果输入是 4 3 2 1,输出将是 3 4 1 2

2023-09-18