【问题标题】:Return variables on the same line - Python在同一行返回变量 - Python
【发布时间】:2022-11-17 06:18:46
【问题描述】:

我有一个 for 循环,它遍历列表中的三个元素:["123"、"456"、"789"]。 因此,在第一次迭代中,它将对第一个元素中的每个数字执行计算,然后将这些数字加回去。这对其他两个元素重复。然后将输出转换为字符串并输出。

for x in digits:
    if len(x) == 3:
        result1 = int(x[0]) * 8 ** (3 - 1)
        result2 = int(x[1]) * 8 ** (2 - 1)
        result3 = int(x[2]) * 8 ** (1 - 1)

        result = result1 + result2 + result3
        return result

问题是,当输出计算结果时,它在不同的行上输出它们,但我需要它们在同一行上。

例如:

  • 123
  • 456
  • 789

我需要他们是这样的:

  • 123 456 789

我已经尝试将计算结果放入一个列表中,然后将其转换为字符串并输出,但没有骰子 - 它仍然在不同的行而不是一行上返回值。

编辑:

我知道如何使用打印功能来做到这一点:

print(str(result), end=" ")

但是需要使用返回函数。有什么办法吗?

【问题讨论】:

  • 如果您查看 print 函数的文档,您会发现它有一个 end 参数。
  • 将输出加入一个字符串并打印该字符串
  • 您必须向我们展示代码(或简单版本)以查看问题所在。一个常见的解决方案是“加入”。假设您有一个整数列表 foo = [1, 2, 3]。您可以将它们转换为字符串,并用" ".join(str(v) for v in foo) 将它们分隔开。

标签: python list return


【解决方案1】:

您可以使用a_list.append('variable') 将每个变量附加到列表中并使用' '.join(a_list) 打印它 需要的时候。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-16
    • 2018-12-26
    • 1970-01-01
    • 2015-10-29
    • 1970-01-01
    相关资源
    最近更新 更多