我试图以以下格式打印整数(例如39):39。它不能是像'39这样的str类型对象。’,但是一个数字
e。G. n = 39.0应打印为39.
n = 39.0
#magic stuff with output
39.
我尝试使用:。Nf方法(:。(如果显然——没有工作),打印(float(39.))或直接打印(39.)。第一种情况是39,第二种和第三种情况是39.0我还尝试了float(str(39) + '.'),显然它不起作用
很抱歉,如果这是一个愚蠢的问题,我已经试图解决它几个小时了,仍然找不到任何信息。
From Format Specification Mini-Language(强调我的):
'#'
选项导致"替代形式"被用于转换。对于不同的类型,替代表单的定义不同。此选项仅对整数、浮点和复杂类型有效。对于整数,当使用二进制、八进制或十六进制输出时,该选项会在输出值中添加相应的前缀'0b'
、'0o'
、'0x'
或'0X'
。对于float和complex,替代形式导致转换结果总是包含一个小数点字符,即使后面没有数字。通常,小数点字符只有在后面跟着数字时才会出现在这些转换的结果中。此外,对于'g'
和'G'
转换,不会从结果中删除末尾的零。
>>> n=39.0
>>> print(f'{n:#.0f}')
39.
print(int(n))
或者你可以试试:
n = n//1打印(f"{n}"。)