函数字符串的百分比和/或格式[重复]
Posted
技术标签:
【中文标题】函数字符串的百分比和/或格式[重复]【英文标题】:% and/or format for function string [duplicate] 【发布时间】:2016-07-16 08:12:34 【问题描述】:我正在使用格式来测试 Python 中的函数。我想要一个函数的输出
def test(f,k):
print "0(1)=2".format(f,k,f(k))
给定
test(Sqrt,4)
成为
Sqrt(4)=2
但是格式会返回类型“函数”和尖括号内的内存地址。有没有一种巧妙的方法来缩短输出以获得我想要的东西?
【问题讨论】:
【参考方案1】:您希望使用__name__
:
def test(f,k):
print("0(1)=2".format(f.__name__,k,f(k)))
test(sqrt, 2)
输出:
sqrt(2)=1.4142135623730951
从数据模型文档here 的“可调用类型”部分,__name__
很简单:
__name__ func_name : The function’s name.
仔细阅读文档以了解当您想要使用这些类型的属性时可以使用什么。通常,这将可用于 callable 类型(例如,在定义方法或类时,__name__
属性将可供您使用)。但如果你只是定义一个不可调用的,类似:
x = 5
并尝试拨打x.__name__
,您将收到AttributeError
【讨论】:
【参考方案2】:与 Python 中的大多数对象不同,函数的 __name__
属性设置为定义它们的名称。你可以使用它:
print "0(1)=2".format(f.__name__, k, f(k))
类也有__name__
,但大多数其他可调用对象没有。如果f
是其他类型的可调用对象,则您必须以不同的方式处理它,具体方式取决于它是什么类型的可调用对象以及您是否控制其实现。
【讨论】:
以上是关于函数字符串的百分比和/或格式[重复]的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript数学函数:如何用千分位逗号格式化答案[重复]
在 ggplot2 中,如何将图例文本更改为百分比格式 [重复]
是否可以使用 java DecimalFormat 格式化负百分比?
pandas使用pct_change计算数据列的百分比变化环比变化率:计算当前元素和前一个元素之间的百分比变化使用style函数指定format的格式:百分比缺失值替换用颜色标注极大值和极小值