String Formatting in Python %i(在Python%i中设置字符串格式)
本文介绍了在Python%i中设置字符串格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我必须将代码从Python2.x转换为Python3(主要是字符串格式) 我遇到了这样的事情:Logger.info("random String %d and %i".format(value1, value2))
现在,我知道%d可以替换为{:d},但找不到等同于%i的内容(签名)
使用{:i}会出现以下错误:
ValueError:‘int’类型的对象的格式代码‘i’未知
推荐答案
简而言之:Python3str.Format()规范已放弃对"i"(%i或{:i})的支持。它只使用"d"(%d或{:d})来指定整数。因此,您可以简单地对所有整数使用{:D}。
长长的答案是:对于输出,即对于printf或日志记录,%i和%d实际上是相同的,无论是在Python中还是在C中都是如此,这是有区别的,但只有当您使用它们来解析输入时,就像使用scanf()一样。对于scanf,%d和%i实际上都表示有符号整数,但如果前面有0x,%i会将输入解释为十六进制数;如果前面有0,则%i会将输入解释为八进制,否则会将输入解释为十进制。因此,对于正常使用,最好使用%d,除非您希望将INPUT指定为十六进制或八进制。更多详情,请查看此处的格式规范: https://docs.python.org/2/library/string.html#formatspec
这篇关于在Python%i中设置字符串格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:在Python%i中设置字符串格式


基础教程推荐
猜你喜欢
- 在Python中从Azure BLOB存储中读取文件 2022-01-01
- Plotly:如何设置绘图图形的样式,使其不显示缺失日期的间隙? 2022-01-01
- 修改列表中的数据帧不起作用 2022-01-01
- PermissionError: pip 从 8.1.1 升级到 8.1.2 2022-01-01
- 求两个直方图的卷积 2022-01-01
- PANDA VALUE_COUNTS包含GROUP BY之前的所有值 2022-01-01
- 在同一图形上绘制Bokeh的烛台和音量条 2022-01-01
- 无法导入 Pytorch [WinError 126] 找不到指定的模块 2022-01-01
- 使用大型矩阵时禁止 Pycharm 输出中的自动换行符 2022-01-01
- 包装空间模型 2022-01-01