0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

python基础知识点(六)

python爬虫知识分享 来源:python爬虫知识分享 作者:python爬虫知识分享 2022-04-06 15:43 次阅读

字符串里的缝隙是什么

Python中求一个字符串里,某子字符(串)出现的次数。

大家都懂得使用 count() 函数,比如下面几个常规例子:

>>> "aabb".count("a")
2
>>> "aabb".count("b")
2
>>> "aabb".count("ab")
1

但是如果我想计算空字符串的个数呢?

>>> "aabb".count("")
5

不是应该返回 0 吗?怎么会返回 5?

实际上,在 Python 看来,两个字符之间都是一个空字符,通俗的说就是缝隙。

理解了这个“缝隙” 的概念后,以下这些就好理解了。

>>> (" " * 10).count("")
11
>>> "" in ""
True
>>> "" in "M"
True

x 与 +x 等价吗?

在大多数情况下,这个等式是成立的。

>>> n1 = 10086
>>> n2 = +n1
>>>
>>> n1 == n2
True

什么情况下,这个等式会不成立呢?

由于Counter的机制,+ 用于两个 Counter 实例相加,而相加的结果如果元素的个数 <= 0,就会被丢弃。

>>> from collections import Counter
>>> ct = Counter('abcdbcaa')
>>> ct
Counter({'a': 3, 'b': 2, 'c': 2, 'd': 1})
>>> ct['c'] = 0
>>> ct['d'] = -2
>>>
>>> ct
Counter({'a': 3, 'b': 2, 'c': 0, 'd': -2})
>>>
>>> +ct
Counter({'a': 3, 'b': 2})

+= 不等同于=+

对列表 进行+= 操作相当于 extend,而使用 =+ 操作是新增了一个列表。

因此会有如下两者的差异。

# =+
>>> a = [1, 2, 3, 4]
>>> b = a
>>> a = a + [5, 6, 7, 8]
>>> a
[1, 2, 3, 4, 5, 6, 7, 8]
>>> b
[1, 2, 3, 4]


# +=
>>> a = [1, 2, 3, 4]
>>> b = a
>>> a += [5, 6, 7, 8]
>>> a
[1, 2, 3, 4, 5, 6, 7, 8]
>>> b
[1, 2, 3, 4, 5, 6, 7, 8]


审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 字符串
    +关注

    关注

    1

    文章

    579

    浏览量

    20537
  • 函数
    +关注

    关注

    3

    文章

    4333

    浏览量

    62693
  • python
    +关注

    关注

    56

    文章

    4797

    浏览量

    84753
收藏 人收藏

    评论

    相关推荐

    后悔没有早点看到:天线设计中的知识点

    Cat.1 bis R13架构,天线架构精简为单天线架构,去掉了分集接收天线,因此只需要一根天线。   知识点: Cat.1 bis相对于Cat.1的区别是,后者为两根天线(一根主天线,一根分集天线
    的头像 发表于 12-24 17:11 320次阅读
    后悔没有早点看到:天线设计中的<b class='flag-5'>知识点</b>!

    硬件工程师面试基础知识点

    皮尔斯振荡器(Pierce oscillator) 上图中,U1为增益很大的反相放大器,CL1、CL2为匹配电容,是电容三式电路的分压电容,接地点就是分压。以接地点即分压为参考点,输入和输出是反相的,但从并联谐振回路即石英
    的头像 发表于 11-21 11:04 240次阅读
    硬件工程师面试<b class='flag-5'>基础知识点</b>

    接口测试理论、疑问收录与扩展相关知识点

    本文章使用王者荣耀游戏接口、企业微信接口的展示结合理论知识,讲解什么是接口测试、接口测试理论、疑问收录与扩展相关知识点知识学院,快来一起看看吧~
    的头像 发表于 11-15 09:12 324次阅读
    接口测试理论、疑问收录与扩展相关<b class='flag-5'>知识点</b>

    品质管理基础知识

    品质管理基础知识
    的头像 发表于 11-01 11:08 365次阅读
    品质管理<b class='flag-5'>基础知识</b>

    Verilog HDL的基础知识

    本文继续介绍Verilog HDL基础知识,重点介绍赋值语句、阻塞与非阻塞、循环语句、同步与异步、函数与任务语法知识
    的头像 发表于 10-24 15:00 446次阅读
    Verilog HDL的<b class='flag-5'>基础知识</b>

    负载开关基础知识

    电子发烧友网站提供《负载开关基础知识.pdf》资料免费下载
    发表于 10-08 09:56 1次下载
    负载开关<b class='flag-5'>基础知识</b>

    全新的半导体基础知识

    《全新的半导体基础知识》首先对流行于电子书刊上数十年之久的经典半导体基础知识中存在的谬误进行了全方位的讨论,然后以半导体内部结构为抓手,以G型半导体(客供电子型半导体)、H型半导体(主供电子型半导体
    的头像 发表于 09-20 11:30 1254次阅读
    全新的半导体<b class='flag-5'>基础知识</b>

    C++语言基础知识

    电子发烧友网站提供《C++语言基础知识.pdf》资料免费下载
    发表于 07-19 10:58 7次下载

    模拟电子威廉希尔官方网站 知识点问题总结概览

    给大家分享模拟电子威廉希尔官方网站 知识点问题总结。
    的头像 发表于 05-08 15:16 1182次阅读
    模拟电子威廉希尔官方网站
<b class='flag-5'>知识点</b>问题总结概览

    一篇搞定DCS系统相关知识点

    目标。DCS系统广泛应用于各个行业,如化工、电力、制药等。在这些行业中,DCS系统可以实现对生产过程的集中监控和分散控制,提高生产效率和产品质量,降低能耗和减少环境污染,从而保证产品质量,并确保生产过程的安全可靠。 二.DCS系统知识点
    的头像 发表于 03-26 18:40 922次阅读
    一篇搞定DCS系统相关<b class='flag-5'>知识点</b>

    TFT彩色液晶屏的基础知识详情!

    TFT(Thin-Film Transistor)彩色液晶屏是一种常见的液晶显示威廉希尔官方网站 ,具有以下基础知识、原理、优势和应用领域; 一 、彩色液晶屏基础知识 1、结构:TFT液晶屏由液晶层
    的头像 发表于 03-08 15:18 1289次阅读

    FPGA基础知识介绍

    电子发烧友网站提供《FPGA基础知识介绍.pdf》资料免费下载
    发表于 02-23 09:45 32次下载

    鸿蒙开发【设备开发基础知识

    鸿蒙开发基础知识讲解
    的头像 发表于 01-29 18:44 1041次阅读
    鸿蒙开发【设备开发<b class='flag-5'>基础知识</b>】

    机器视觉基础知识点总结

    照明是影响机器视觉系统输入的重要因素。光源系统的设计非常重要,它与输入数据直接相关,即图像的质量和应用效果。
    发表于 01-16 10:08 1163次阅读

    射频与微波基础知识

    射频与微波基础知识
    的头像 发表于 01-16 10:05 849次阅读
    射频与微波<b class='flag-5'>基础知识</b>