我写了这段代码来找到最大和最小的(int)数,但它不起作用

Posted

技术标签:

【中文标题】我写了这段代码来找到最大和最小的(int)数,但它不起作用【英文标题】:i wrote this code to find the largest and smallest (int)number but it does not work 【发布时间】:2022-01-01 08:49:12 【问题描述】:

我编写这段代码是为了获取几个 int 数字的输入,并编写其中最小和最大的,但代码不起作用。

numbers=[]    
num=input('enter your number')    
Int_num=int(num)    
Int_num.append(numbers)    
print('maximum number is:',max(numbers))    
print('minimum number is:',min(numbers))

【问题讨论】:

Int_num.append(numbers) -> numbers.append(Int_num) 你追加一个空列表的数字 您只会得到一个输入,然后将其附加到列表中。因此您的列表将只有一项,并且 max 和 min 的结果将是该数字。不仅如此,您还应该将附加代码替换为numbers.append(Int_num) 欢迎来到 Stack Overflow! “不起作用”不足以描述您的问题。它实际上是做什么的?你有错误吗?还是它只是打印错误的值?或者是别的什么?请使用tour,阅读what's on-topic here、How to Ask 和question checklist。你也会发现这很有帮助:How to debug small programs. 请搜索python.org/dev/peps/pep-0008了解PEP8 【参考方案1】:

Int_num.append(numbers) 替换为numbers.append(Int_num.append)

要获得多个数字,您可以尝试:

numbers = []
last_number = input('Enter a number: ')
while last_number:
  numbers.append(int(last_number))

print(f'Max: max(numbers), Min: min(numbers)')

【讨论】:

这个答案是错误的,您的 while 循环条件始终为 True,这将导致无限循环。您必须编辑答案。 空字符串被评估为False,因此您只需按 Enter 即可退出循环,无需输入任何其他内容。也许在某些系统上您可能需要添加.strip()【参考方案2】:

您正在尝试将列表附加到整数,它应该是 numbers.append(Int_num),因此您将数字 Int_num 附加到列表 numbers

【讨论】:

如果要输入一个数字序列,需要将每个数字分别转为整数,然后追加到数组中 如果你想要一个整数序列,尝试使用它,它将输入中的每个数字转换为整数,并将结果存储到numbers列表中: num=input('输入你的number')(line break) numbers = [int(x) for x in num.split()]【参考方案3】:

试试这个:

numbers=[]       
num=input('enter your number')

while num != "":
    Int_num=int(num)    
    numbers.append(Int_num)    
    num=input('enter your number') 

print('maximum number is:',max(numbers))    
print('minimum number is:',min(numbers))

【讨论】:

【参考方案4】:

问题是线 int_num.append(数字) 它应该是 numbers.append(Int_num)

另外,如果你放一个 while(True): 除了第一行,你可以在列表中添加很多数字(使用 ctrl+c 停止程序,如果它在 cmd 或 powershell 中运行)

【讨论】:

如果你使用ctrl+C停止程序,如何让它打印最大值和最小值? @PranavHosangadi Alex 说“除了第一行”。【参考方案5】:

为了得到一个数字序列:

numbers = []
while True:
  number = input('Enter a number or enter q to exit: ')
  if number == 'q':
      break
  else:  
      numbers.append(int(number))

print(f'Max: max(numbers), Min: min(numbers)')

【讨论】:

以上是关于我写了这段代码来找到最大和最小的(int)数,但它不起作用的主要内容,如果未能解决你的问题,请参考以下文章

由于花费大量时间,代码未执行

如何使用python从csv文件中提取最小值和最大值

比较超过最大递归深度

VB中如何求最大值和最小值,我写了下面的代码可是只能求最大值和平均值。最小值一直显示0

最小值和最大值

建立一个饼图