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