美文网首页
Python基础错误4

Python基础错误4

作者: goodAndBad | 来源:发表于2017-11-10 18:44 被阅读0次

str.format()

(是控制输出的一种函数)

基本用法:

print("{},{}".format("你好","再见"))

每个{}会被format中的参数替换;
{}中也可填写数字,如{0},代表对应format中的第几个参数,从0开始,数字位置随意,如print("{1},{0}".format("你好","再见")) 结果是:再见,你好。

ValueError: cannot switch from automatic field numbering to manual field specification

print("{},{1}".format("你好","再见"))

如果你选择填写数字来控制打印的顺序,那么就要在所有{}中写数字,否则就会报错如上。

正确代码

print("{0},{1}".format("你好","再见"))

打印结果:

你好,再见

然后我还无聊的玩了一会

print("{1},{2}".format("你好","再见","哈哈"))

结果正确:
再见,哈哈

多写不打印出来也是可以的。

print("{1},{3}".format("你好","再见","哈哈"))

结果当然错误:
IndexError: tuple index out of range

print("{1},{0,2}".format("你好","再见","哈哈"))

结果错误:
KeyError: '0,2'

感觉和数组差不多吧。

format还可以使用关键字参数
但是要放到format最后,否则会报错

print("{index},{0}".format(index ="你好","再见"))
error.png

正确代码:

print("{index},{0}".format("再见",index ="你好"))

但是有一点要注意,此时数字的最大值要把关键字指定的数量减去,如print("{index},{1}".format("再见",index ="你好"))就会报出index越界的错误。

format 的用法还有一些,如{0:.3f}表示数字保留3位小数;{1:10d}表示打印出来的宽度,等等;还可以传入一个字典, 然后使用方括号 '[]' 来访问键值。

相关文章

网友评论

      本文标题:Python基础错误4

      本文链接:https://www.haomeiwen.com/subject/fjfimxtx.html