为了账号安全,请及时绑定邮箱和手机立即绑定

在输出python中插入%符号

在输出python中插入%符号

慕桂英3389331 2022-10-06 18:35:25
我是 python 的初学者,并试图在输出中插入百分比符号。下面是我得到的代码。print('accuracy :', accuracy_score(y_true, y_pred)*100)当我运行此代码时,我得到了 50.0001 并且我想在数字的末尾加上 %sign 所以我尝试如下操作print('Macro average precision :', precision_score(y_true, y_pred, average='macro')*100"%\n")我收到错误说有人SyntaxError: invalid syntax 可以帮忙吗?
查看完整描述

4 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

使用 f 字符串:

print(f"Macro average precision : {precision_score(y_true, y_pred, average='macro')*100}%\n")

或者将值转换为字符串,并添加(连接)字符串:

print('Macro average precision : ' + str(precision_score(y_true, y_pred, average='macro')*100) + "%\n")

请参阅此处对每个优点的讨论;基本上第一个更方便;第二个计算速度更快,也许更容易理解。


查看完整回答
反对 回复 2022-10-06
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

简单的“低技术”方法是纠正您的(缺乏)输出表达式。将浮点数转换为字符串并连接。为了便于理解:

pct = precision_score(y_true, y_pred, average='macro')*100
print('Macro average precision : ' + str(pct) + "%\n")

这是不优雅的,但很容易理解。


查看完整回答
反对 回复 2022-10-06
?
料青山看我应如是

TA贡献1772条经验 获得超7个赞

你可以试试这个:

print('accuracy: {:.2f}%'.format(100*accuracy_score(y_true, y_pred)))


查看完整回答
反对 回复 2022-10-06
?
慕仙森

TA贡献1827条经验 获得超7个赞

解决此问题的方法之一是使用字符串连接。您可以使用简单的 + 运算符将百分比符号添加到函数的输出中。但是,您的函数的输出需要转换为字符串数据类型,以便能够将其与字符串连接。要将某些内容转换为字符串,请使用 str()

因此,使用此解释修复您的打印语句的正确方法是:

print('Macro average precision : ' + str(precision_score(y_true, y_pred, average='macro')*100) + "%\n")


查看完整回答
反对 回复 2022-10-06
  • 4 回答
  • 0 关注
  • 91 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信