知行编程网知行编程网  2023-01-02 09:00 知行编程网 隐藏边栏  1 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python3表达式超过限制还能换行吗?的相关知识,希望可以帮到处于编程学习途中的小伙伴


python3表达式是否可以超出限制并换行?

记得每次做试卷,最后都为800字的限制而难过。毕竟要码这么多字,也不是一件容易的事。但是在python中,由于字符数的限制,如果一个表达式超过了限制,就不是什么好事了,会比较难处理。那么,python3的表达式能不能越界呢?今天,小编就带大家一起来探讨一下这个问题。


Source Text:

<a href="###" data-sname="微信" data-icon="http://b.hiphotos.bdimg.com/wisegame/pic/item/e126cffc1e178a8230ff5ad9f103738da877e88c.jpg" data-type="soft" data-size="36598395" data-versionname="6.3.13.49" data-versioncode="740" data-package="com.tencent.mm" data-download_url="http://gdown.baidu.com/data/wisegame/faf7795f5e16ff68/weixin_740.apk" data-updatetime="2016-02-03" class="event-exe-install download s-index-icon" tjurl="http://as.baidu.com/a/download?tj=game_8828716_微信&docid=8828716&pid=2786482313&pre=web_am_rank&d=2&f=rank_3000_1">安 装</a>



匹配到里面的

data-sname,data-versionname等信息,验证的表达式如下:

<a\shref="###" data-sname="(.*)"\sdata-icon="(.*)"\sdata-type="(.*)"\sdata-size="(.*)"\sdata-versionname="(.*)"\sdata-versioncode="(.*)"\sdata-package="(.*)"\sdata-download_url="(.*)"\sdata-updatetime="(.*)"(.*)</a>


Python实现如下:

line = sourcetext  # 太长不复制了,就是上面提到的
r=<a\shref="###"data-sname="(.*)"\sdata-icon="(.*)"\sdata-type="(.*)"\sdata-size="(.*)"\sdata-versionname="(.*)"\sdata-versioncode="(.*)"\sdata-package="(.*)"\sdata-download_url="(.*)"\sdata-updatetime="(.*)"(.*)</a>
 
p = re.search(r, line)
print p.group(0)



问题是这个表达式太长了,超过了

PEP8要求的每行79个字符,请问有没有什么办法让表达式支持换行又不影响匹配?



解决:

python 语法有 \ 延续符号,但它不适合这种情况。 80多个字符,拆分成短字符串,然后拼接。

python3表达式是否可以超出限制并换行?


小伙伴们看着最后的代码很长有点产生退却的想法,其实只是对正则表达式进行可拆分,去掉了表达式就是一个框架啦,感兴趣的小伙伴快试试吧。

更多Python学习推荐:




本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享