Python语句序列问题

Python语句中s[:3]与s[::3]一样吗?
start为0省略,stop为执行到末尾可以省略,step步长为3,不可省。所以就会出现s[::3],它与语句s[:3]区别在哪,我怎么知道到底省略了stop还是step?

s[a:b:c]
表示从[a,b)这个范围切片,步长是c
其中三项都可以省略,a缺省值是0,b缺省值是len(s),c缺省值是1
如果写s[:3],等同于s[0:3:1]
如果写s[::3],等同于s[0:len(s):3]
abc相对位置是根据冒号来确定的,不写后面的冒号就是c缺省,已经写了两个冒号那就是前面的缺省

s[:3]和s[::3]是不同的语句。

s[:3]表示取字符串s中前三个字符,这个语句省略了step参数,默认为1。

而s[::3]表示取字符串s中每隔两个字符取一个字符,也就是步长为3。这个语句省略了start和stop参数,分别默认为0和末尾位置。

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7671893
  • 这篇博客你也可以参考下:Python字符串切片(s[::-1])巧解回文字符串判定
  • 除此之外, 这篇博客: [Python黑帽] 二.Python能做什么攻击?正则表达式、网络爬虫和套接字通信入门中的 (一) 什么是C/S架构呢? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • Python网络通讯主要是C/S架构的,采用套接字实现。C/S架构是客户端(Client)和服务端(Server)架构,Server唯一的目的就是等待Client的请求,Client连上Server发送必要的数据,然后等待Server端完成请求的反馈。

    C/S网络编程:Server端进行设置,首先创建一个通信端点,让Server端能够监听请求,之后就进入等待和处理Client请求的无限循环中。Client编程相对Server端编程简单,只要创建一个通信端点,建立到服务器的链接,就可以提出请求了。