Python 数组操作:查找最小值并交换位置
使用 Python 数组找出 20 个不同整数中的最小值,并将最小值与第一个输入的数交换位置。
nums = input('请输入 20 个不同的整数,用空格分隔:')
nums = nums.split() # 将输入的字符串分隔成一个个整数字符串
nums = [int(num) for num in nums] # 将整数字符串转换成整数
min_index = 0 # 最小数的下标
for i in range(1, 20):
if nums[i] < nums[min_index]:
min_index = i
nums[0], nums[min_index] = nums[min_index], nums[0] # 将最小数与第一个数交换位置
print(nums)
代码解释:
- 输入整数: 使用
input()函数获取用户输入的 20 个整数,并用空格分隔。 - 字符串分割: 使用
split()方法将输入字符串分割成一个个整数字符串。 - 类型转换: 使用列表推导将整数字符串转换成整数,并存储在
nums列表中。 - 查找最小值下标: 使用循环遍历
nums列表,找到最小值的索引并存储在min_index变量中。 - 交换位置: 使用解包赋值将最小值与第一个数交换位置。
- 输出结果: 打印交换后的
nums列表。
示例:
用户输入:10 5 15 20 1 18 12 17 11 19 2 16 14 13 9 8 4 3 6 7
输出结果:[1, 5, 15, 20, 10, 18, 12, 17, 11, 19, 2, 16, 14, 13, 9, 8, 4, 3, 6, 7]
注意:
- 代码假设用户输入的都是不同的整数,如果存在重复数字,可能会导致结果不符合预期。
- 代码可以根据实际需要修改,例如修改输入的整数个数、调整交换的位置等。
希望本代码和解释能帮助您更好地理解 Python 数组操作和算法实现。
原文地址: https://www.cveoy.top/t/topic/nPi7 著作权归作者所有。请勿转载和采集!