python - 在 python 3 中获得正确的输出
问题描述
我在一个单独的文件中导入了两个不同的函数,但得到了意外的输出。
冒泡排序.py
def checkInputs(n, array):
if n == len(array) and len(array) > 1:
for i in range(0, len(array)):
array[i] = int(array[i])
removeDups = list(set(array))
sortArray = bubbleSort(removeDups)
print(sortArray[len(sortArray) - 2])
else:
print("please enter correct values")
def bubbleSort(unSortArray):
for i in range(len(unSortArray)):
swap = False
for j in range(0, len(unSortArray) - i - 1):
if unSortArray[j] > unSortArray[j + 1]:
swap = unSortArray[j]
unSortArray[j] = unSortArray[j + 1]
unSortArray[j + 1] = swap
swap = True
if swap == False:
break
return unSortArray
测试.py
from bubbleSort import checkInputs, bubbleSort
print(checkInputs(5, [1, 2]))
正如您在第二行输出屏幕截图中的屏幕截图中看到的那样,为什么?
解决方案
推荐阅读
- r - 如何从 R 中的数据框中生成一系列每月日期?
- python - 运行 keras 模型后无法绘图?
- prolog - 什么是在序言中链接独占语句的好方法?
- javascript - 我的问题是关于使用javascript计算订单总价的解决方案
- python-3.x - 从 scikit 数组转换为 PIL photoimage 的图像被扭曲
- node.js - 无法读取未定义的属性“取消” - 节点计划
- java - gradle compileJava错误:包org.junit.jupiter.api不存在
- javascript - 水平和垂直对齐伪元素的内容
- prometheus - 如何修复 Prometheus 中的“\"INVALID\" is not a valid start token"'
- python - 如何手动绘制巴特沃斯滤波器?