You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python初始测试异常:Mac下print输出格式不符合预期

问题分析与解决方案

嘿,这个问题很典型!你看到带括号的输出,核心原因是你正在Python 2环境下运行代码

为什么会出现这个问题?

在Python 2中,print是一个语句,而不是函数。当你给它加上括号时,Python会把括号里的整个内容当成一个元组(tuple)来处理,所以最终输出会带上元组的括号和逗号分隔符,也就是你看到的('Der Wert der Variablen a ist jetzt: ', 5)

而在Python 3里,print被改成了函数,必须用括号调用,这时候它会把多个参数自动拼接成你预期的格式输出。

两种解决办法

  • 继续使用Python 2的话
    • 方案1:去掉print的括号,写成:
      a = 5
      print 'Der Wert der Variablen a ist jetzt: ', a
      
    • 方案2:在代码开头导入Python 3的print函数兼容写法,这样就能保留括号调用:
      from __future__ import print_function
      a = 5
      print('Der Wert der Variablen a ist jetzt: ', a)
      
  • 切换到Python 3环境
    直接运行你现有的代码就可以了,Python 3会自动处理参数拼接,输出就是你想要的Der Wert der Variablen a ist jetzt: 5

验证示例

比如在Python 2环境下:

# 带括号的print(错误输出)
print('Test', 10)
# 输出:('Test', 10)

# 去掉括号(正确输出)
print 'Test', 10
# 输出:Test 10

# 导入兼容模块后(正确输出)
from __future__ import print_function
print('Test', 10)
# 输出:Test 10

内容的提问来源于stack exchange,提问作者Lars

火山引擎 最新活动