Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
最大数和最小数。python_Python - Fatal编程技术网

最大数和最小数。python

最大数和最小数。python,python,Python,我知道这很简单,但我很难在python的三个数字中找到最大和最小的数字。 这是我的密码: *我不允许使用内置函数min和max,因此我必须使用if和else…* def largest_and_smallest(number1, number2, number3): if number1 >= number2: maxn=number1 minn=number2 if number1 >= number3:

我知道这很简单,但我很难在python的三个数字中找到最大和最小的数字。 这是我的密码: *我不允许使用内置函数min和max,因此我必须使用if和else…*

def largest_and_smallest(number1, number2, number3):
    if number1 >= number2:
        maxn=number1
        minn=number2
        if number1 >= number3:
           maxn=number1
            if number3>=number2:
                minn=number2
            else:
                minn=number3
        else:
            maxn=number3
            minn=number2
    else:
        maxn=number2
        minn=number1
        if number2 >= number3:
             maxn=number2
             if number3 >= number2:
                 minn=number2
             else:
                 minn=number3
         else:
             maxn=number3
             minn=number1
    print(maxn,minn)
我收到了一些错误消息,例如:未使用局部变量maxn和minn,以及外部作用域中的阴影名称minn和maxn。我对这个很陌生,所以我很想得到一些帮助。 提前多谢

选项1:

def largest_and_smallest(number1, number2, number3):
    print(max([number1, number2, number3]))
    print(min([number1, number2, number3]))

largest_and_smallest(1, 3, 2)
选项2:带列表:

def largest_and_smallest(lst):
    print(max(lst))
    print(min(lst))


largest_and_smallest([1, 2, 3, 4])
备选案文1:

def largest_and_smallest(number1, number2, number3):
    print(max([number1, number2, number3]))
    print(min([number1, number2, number3]))

largest_and_smallest(1, 3, 2)
选项2:带列表:

def largest_and_smallest(lst):
    print(max(lst))
    print(min(lst))


largest_and_smallest([1, 2, 3, 4])
def最大值和最小值(数字1、数字2、数字3):
如果number1>number2和number1>number3:
maxn=number1
elif编号2>编号1和编号2>编号3:
maxn=number2
其他:
maxn=3号
如果编号1<编号2且编号1<编号3:
minn=1号
elif编号2<编号1和编号2<编号3:
minn=2号
其他:
minn=3号
打印最大值,明尼苏达州
最大和最小(1,2,3)
定义最大值和最小值(数字1、数字2、数字3):
如果number1>number2和number1>number3:
maxn=number1
elif编号2>编号1和编号2>编号3:
maxn=number2
其他:
maxn=3号
如果编号1<编号2且编号1<编号3:
minn=1号
elif编号2<编号1和编号2<编号3:
minn=2号
其他:
minn=3号
打印最大值,明尼苏达州
最大和最小(1,2,3)

如果总是提交3个整数,那么我只需对列表进行排序,并使用第一个和最后一个索引由于不允许使用min和max我使用的是排序

def largest_and_smallest(number1, number2, number3):
    arr = sorted([number1, number2, number3])
    n_min, n_mid, n_max = arr[0], arr[1], arr[2]
    return n_min, n_max
修改我的答案以满足条件要求

def largest_and_smallest(number1, number2, number3):
    high = 0
    low = 0
    if (number1 > number2) and (number1 > number3):
        high = number1
    elif (number2 > number1) and (number2 > number3):
       high = number2
    else:
       high = number3

    if (number1 < number2) and (number1 < number3):
        low = number1
    elif (number2 < number1) and (number2 < number3):
       low = number2
    else:
       low = number3

    print(low, high)

largest_and_smallest(10, 100, 1)
largest_and_smallest(1, 2, 3)
def最大值和最小值(数字1、数字2、数字3):
高=0
低=0
如果(编号1>编号2)和(编号1>编号3):
高=1号
elif(编号2>编号1)和(编号2>编号3):
高=数字2
其他:
高=3号
如果(1号<2号)和(1号<3号):
低=1号
elif(编号2<编号1)和(编号2<编号3):
低=数字2
其他:
低=3号
打印(低、高)
最大和最小(10100,1)
最大和最小(1,2,3)

如果总是提交3个整数,那么我只需对列表进行排序,并使用第一个和最后一个索引由于不允许使用min和max我使用的是排序

def largest_and_smallest(number1, number2, number3):
    arr = sorted([number1, number2, number3])
    n_min, n_mid, n_max = arr[0], arr[1], arr[2]
    return n_min, n_max
修改我的答案以满足条件要求

def largest_and_smallest(number1, number2, number3):
    high = 0
    low = 0
    if (number1 > number2) and (number1 > number3):
        high = number1
    elif (number2 > number1) and (number2 > number3):
       high = number2
    else:
       high = number3

    if (number1 < number2) and (number1 < number3):
        low = number1
    elif (number2 < number1) and (number2 < number3):
       low = number2
    else:
       low = number3

    print(low, high)

largest_and_smallest(10, 100, 1)
largest_and_smallest(1, 2, 3)
def最大值和最小值(数字1、数字2、数字3):
高=0
低=0
如果(编号1>编号2)和(编号1>编号3):
高=1号
elif(编号2>编号1)和(编号2>编号3):
高=数字2
其他:
高=3号
如果(1号<2号)和(1号<3号):
低=1号
elif(编号2<编号1)和(编号2<编号3):
低=数字2
其他:
低=3号
打印(低、高)
最大和最小(10100,1)
最大和最小(1,2,3)

将它们存储在列表中,以便您自己使用,然后使用内置Python函数提取最小值和最大值

nums = [1,3,2]

print(max(nums))
print(min(nums))

> 3
> 1

编辑:我看到不允许使用内置函数,这将基于一个值数组返回一个(min,max)元组

nums = range(1,100)

def min_max(vals):
  min_val = vals[0]
  max_val = vals[0]

  for v in vals:
    if v > max_val:
      max_val = v
    if v < min_val:
      min_val = v

  return (min_val, max_val)

print(min_max(nums))
nums=范围(1100)
def最小值和最大值(VAL):
最小值=val[0]
最大值=val[0]
对于VAL中的v:
如果v>最大值:
最大值=v
如果v<最小值:
最小值=v
返回值(最小值、最大值)
打印(最小值和最大值(nums))

将它们存储在列表中,以便您自己使用,然后使用内置Python函数提取最小值和最大值

nums = [1,3,2]

print(max(nums))
print(min(nums))

> 3
> 1

编辑:我看到不允许使用内置函数,这将基于一个值数组返回一个(min,max)元组

nums = range(1,100)

def min_max(vals):
  min_val = vals[0]
  max_val = vals[0]

  for v in vals:
    if v > max_val:
      max_val = v
    if v < min_val:
      min_val = v

  return (min_val, max_val)

print(min_max(nums))
nums=范围(1100)
def最小值和最大值(VAL):
最小值=val[0]
最大值=val[0]
对于VAL中的v:
如果v>最大值:
最大值=v
如果v<最小值:
最小值=v
返回值(最小值、最大值)
打印(最小值和最大值(nums))

一个问题是范围中没有定义maxn和minn,请尝试在代码中插入以下行以初始化maxn和minn变量:

maxn=0
minn=0
现在您的代码如下所示:

def largest_and_smallest(number1, number2, number3): 

    #initializing vars to zero
    maxn=0
    minn=0

    if number1 >= number2: 
         maxn=number1
         #rest of you code...

这将修复局部变量警告,有关作用域的更多信息,请参阅问题是作用域中未定义maxn和minn,请尝试在代码中插入以下行以初始化maxn和minn变量:

maxn=0
minn=0
现在您的代码如下所示:

def largest_and_smallest(number1, number2, number3): 

    #initializing vars to zero
    maxn=0
    minn=0

    if number1 >= number2: 
         maxn=number1
         #rest of you code...

这将修复局部变量警告,有关作用域的更多信息,请参阅

,除了在将代码粘贴到问题中时引入的小缩进问题之外,您的代码工作正常。你得到的“错误”不是错误;它们是来自IDE的警告,您可以安全地忽略它们。

除了在将代码粘贴到问题中时引入的小缩进问题之外,您的代码可以正常工作。你得到的“错误”不是错误;它们是来自IDE的警告,您可以安全地忽略它们。

您可以通过一个简单的


正如Simon在评论中提到的,我的
sort3
函数不是用通常的Python风格编写的。此处为符合PEP-0008的形式

def sort3(a, b, c):
    """ Sort (a, b, c) using a Sorting Network """
    if c < b: 
        b, c = c, b
    if b < a: 
        a, b = b, a
    if c < b: 
        b, c = c, b
    return a, b, c
def sort3(a、b、c):
“”“使用排序网络对(a、b、c)进行排序”“”
如果c
您可以通过简单的


正如Simon在评论中提到的,我的
sort3
函数不是用通常的Python风格编写的。此处为符合PEP-0008的形式

def sort3(a, b, c):
    """ Sort (a, b, c) using a Sorting Network """
    if c < b: 
        b, c = c, b
    if b < a: 
        a, b = b, a
    if c < b: 
        b, c = c, b
    return a, b, c
def sort3(a、b、c):
“”“使用排序网络对(a、b、c)进行排序”“”
如果c