当前位置 : 主页 > 编程语言 > python >

关于python3格式化字符输出的问题

来源:互联网 收集:自由互联 发布时间:2022-06-24
前言 今天简答写了一个爬虫,利用 ​​%​​​ 格式化输出总是有问题 第一种写法: url = 'https://yysygw.res.netease.com/pc/gw/20190826151318/data/b_rabbit/bot%20(%s).png' % str ( i ) 然后报错,当时我没

前言

今天简答写了一个爬虫,利用 ​​%​​​ 格式化输出总是有问题
第一种写法:

url = 'https://yysygw.res.netease.com/pc/gw/20190826151318/data/b_rabbit/bot%20(%s).png' % str(i)

然后报错,当时我没想太多,就以为是因为字符串中的​​()​​​影响的
当然,字符串拼接有太多种办法了,我立马就换了另一种
第二种写法:

url = 'https://yysygw.res.netease.com/pc/gw/20190826151318/data/b_rabbit/bot%20('+str(i)+').png'

这种写法没有报错,然后我就采用了这种写法,当然也可以采用​​f-string​​​,不过我当时为了写比较兼容性的代码采用第二种写法,而没采用 ​​f-string​​

在我弄完这个简单爬虫后,我突然想到,我要好好研究一下,到底是什么地方导致的 格式化字符串报错,然后查询了一下收获还不小

首先这种报错跟字符串中含有 ​​()​​​完全没关系,是因为字符串含有其他的​​%​​​,所以你要输出​​%​​​ 需要转义,要使用​​%%​​进行转义操作。神奇的转义

另外竟然还有这种写法!

print("I'm %(name)s. I'm %(age)d year old" % {'name':'Hom', 'age':30})

格式化输出字典中的值
感谢
​​​ https://www.jianshu.com/p/93a5aad011eb​​ 这篇文章的作者,让我受益良多!


作者:Hello_wshuo​


【文章转自高防服务器 http://www.558idc.com 复制请保留原URL】
上一篇:python将列表中的数字合并成一个数字
下一篇:没有了
网友评论