在输出python中插入%符号

我是 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 可以帮忙吗?


慕桂英3389331
浏览 93回答 4
4回答

aluckdog

使用 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")请参阅此处对每个优点的讨论;基本上第一个更方便;第二个计算速度更快,也许更容易理解。

牛魔王的故事

简单的“低技术”方法是纠正您的(缺乏)输出表达式。将浮点数转换为字符串并连接。为了便于理解:pct = precision_score(y_true, y_pred, average='macro')*100 print('Macro average precision : ' + str(pct) + "%\n")这是不优雅的,但很容易理解。

料青山看我应如是

你可以试试这个:print('accuracy: {:.2f}%'.format(100*accuracy_score(y_true, y_pred)))

慕仙森

解决此问题的方法之一是使用字符串连接。您可以使用简单的 + 运算符将百分比符号添加到函数的输出中。但是,您的函数的输出需要转换为字符串数据类型,以便能够将其与字符串连接。要将某些内容转换为字符串,请使用 str()因此,使用此解释修复您的打印语句的正确方法是:print('Macro average precision : ' + str(precision_score(y_true, y_pred, average='macro')*100) + "%\n")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python