什么';s标签的功能'#';使用python字符串格式选项时
我正在使用python字符串格式选项,阅读之后,我仍然被“#”弄糊涂,因为我真的不知道“值转换将使用“替代形式”(定义见下文)这句话的含义。非常感谢帮助我的人 以下是一些测试:什么';s标签的功能'#';使用python字符串格式选项时,python,string,formatter,Python,String,Formatter,我正在使用python字符串格式选项,阅读之后,我仍然被“#”弄糊涂,因为我真的不知道“值转换将使用“替代形式”(定义见下文)这句话的含义。非常感谢帮助我的人 以下是一些测试: print '%#sabc' % 'ABC' “ABCabc” 1.200000abc 如果这里有一些使用“#”的例子,那就太好了。根据该文档上的注释,为某些转换类型定义了“替代形式” e、 g.在您的示例中,使用%#f 3.替代形式使结果始终包含小数点,即使后面没有数字 没有为字符串定义“替代形式”,因此%s和%#
print '%#sabc' % 'ABC'
“ABCabc”
1.200000abc
如果这里有一些使用“#”的例子,那就太好了。根据该文档上的注释,为某些转换类型定义了“替代形式” e、 g.在您的示例中,使用
%#f
3.替代形式使结果始终包含小数点,即使后面没有数字
没有为字符串定义“替代形式”,因此%s
和%#s
是等效的“替代形式”稍微改变了所选转换的行为
您的浮点表示示例:
“f”:浮点十进制格式
替代形式使结果始终包含小数点,即使后面没有数字
十六进制表示法示例:
“x”:有符号十六进制(小写)
替代形式导致在第一个数字之前插入前导“0x”[…]
几行之后,在第一个注释中解释了替代形式。我如何看到“%f”和“%”f”之间的区别,请给我举个例子好吗?理解笔记对我来说很难。试着打印两个,看看会发生什么!参见Christian文章中的示例answer@chenkh如果回答了您的问题,请标记为“已回答”。我不认为你会找到更好的答案!
print '%#fabc' % 1.2
>>> print("%.0f" % 1)
1
>>> print("%#.0f" % 1)
1.
>>> print("%x" % -11)
-b
>>> print("%#x" % -11)
-0xb