Python 需要帮助在另一行返回数字吗

Python 需要帮助在另一行返回数字吗,python,Python,我刚开始学习python。我目前正在研究一个问题,即如何返回一个纸箱中可以装多少个鸡蛋(1个纸箱=一打鸡蛋),以及根据某个输入,剩余多少鸡蛋。挑战要求我在一行上打印纸箱的数量,在另一行上打印剩余的鸡蛋数量 例如: 如果输入为25,程序应打印: 2 1 我得到了正确的输出,只是我很难像挑战所希望的那样输出它 基本上,我创建了一个函数来进行计算,然后返回输出。代码如下 eggs = int(input()) def dozen(x): y = x // 12

我刚开始学习python。我目前正在研究一个问题,即如何返回一个纸箱中可以装多少个鸡蛋(1个纸箱=一打鸡蛋),以及根据某个输入,剩余多少鸡蛋。挑战要求我在一行上打印纸箱的数量,在另一行上打印剩余的鸡蛋数量

例如:

如果输入为25,程序应打印:

2

1
我得到了正确的输出,只是我很难像挑战所希望的那样输出它

基本上,我创建了一个函数来进行计算,然后返回输出。代码如下

    eggs = int(input())

    def dozen(x):
       y = x // 12
       z = x % 12
       return y, z

    a = dozen(eggs)

    print(a)
在输入端25上接收的输出为:

(2, 1)
但如前所述,我需要:

2

1

我感谢你给予的任何帮助。提前谢谢你

您可以索引元组以单独打印它:

print(a[0])
print(a[1])
或者,解压缩元组并将
sep
设置为
'\n'

print(*a, sep='\n')
或者(另一个选项!),更早地解压缩元组:

a, b = dozen(25)
print(a)
print(b)
您还可以通过使用
divmod
使代码变得更好,如下所示:

def dozen(x):
   return divmod(x, 12)

由于整数除法和模运算本质上是相同的运算,因此可以一次完成。

您可以对元组进行索引以单独打印:

print(a[0])
print(a[1])
或者,解压缩元组并将
sep
设置为
'\n'

print(*a, sep='\n')
或者(另一个选项!),更早地解压缩元组:

a, b = dozen(25)
print(a)
print(b)
您还可以通过使用
divmod
使代码变得更好,如下所示:

def dozen(x):
   return divmod(x, 12)

由于整数除法和模运算本质上是相同的运算,因此可以一次性完成。

您可以执行以下任一操作:

print(*a, sep='\n') #  unpack the values of and print them separated by a newline

顺便说一句,
divmod
builtin只会在开始时为您提供正确的结果

divmod(25, 12) #  returns 2, 1

您可以执行以下任一操作:

print(*a, sep='\n') #  unpack the values of and print them separated by a newline

顺便说一句,
divmod
builtin只会在开始时为您提供正确的结果

divmod(25, 12) #  returns 2, 1
eggs=int(输入())
def打数(x):
y=x//12
z=x%12
打印(y)
打印(z)
a=一打(鸡蛋)
为什么不将print语句添加到函数中并丢失返回值。

eggs=int(input())
def打数(x):
y=x//12
z=x%12
打印(y)
打印(z)
a=一打(鸡蛋)

为什么不将print语句添加到函数中并丢失返回值。

小心
。join
;它需要字符串。好的,我已经试过了,现在它工作了。非常感谢。谢谢@Tomothy32,我总是忘了。小心
。加入
;它需要字符串。好的,我已经试过了,现在它工作了。非常感谢。谢谢@Tomothy32,我总是忘了。好吧,我试过了,现在它起作用了。非常感谢。很高兴提供帮助,欢迎使用Stack Overflow。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受。好吧,我试过了,现在可以用了。非常感谢。很高兴提供帮助,欢迎使用Stack Overflow。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受。看见