zoukankan      html  css  js  c++  java
  • python 分片

    有些书中叫做分片,有些书中叫做切片,翻译时的一些误差)
    概念:将序列按段进行切割
    作用:通过分片操作符来访问一定范围内的元素
    实现:分片是通过两个冒号相隔的索引来实现
    范围:符合序列特性即可使用切片功能,例如:列表、元组、字符串
    语法:slice[(index_start):(index_end):(Step_length)] #()括号中的参数为可选参数,默认步长值为1
    切片的方式:
     

    #定义字符串
     slices="qwertyuioplkjhgfdsazxcvbnm"
     #通过切片获取第一个元素
     print slices[0:1]
     结果:q
     说明:
      index_end不进行参与取值,也就是说只会计算取值0到1之间的数字,0为包含,1为不包含[0,1);
     #增加步长
     print slices[0:6:2]
     结果:qet
     说明:
      Step_length步长值为2,也就是说中间会跳一个然后在去取值,步长为1值就是连续取值,切记步长为2不是跳过2个元素进行取值
     #步长为负时
     print slices[::-2]
     结果:qet
     说明:
      负的步长以为从后向前取值
       #index_start和index_end缺省时
     print slices[:]
     结果:qwertyuioplkjhgfdsazxcvbnm
     说明:起始值和结束值为缺省时,获取所以元素,当index_start代表从第一个元素开始获取直到结束,当index_end缺省时,从定义的元素索引开始获取直到结束
     示例:
        print slices[3:] ---->rtyuioplkjhgfdsazxcvbnm
      print slices[:8] ---->qwertyui
     #index_start和index_end为负数时
     print slices[-5:-1]
     结果:cvbn
     说明:
      当index_start和index_end为负数时,分片切割是从后往前取值
     疑问?
      最后一位元素怎么没有取到?
     解释:
      因为index_end的值为非包含,所以最后一个元素无法取值,如果要取值,需要将index_end变为空置.

  • 相关阅读:
    让程序只有一个进程实例在运行
    HDFS写入和读取流程
    HBase技术详细介绍
    Eclipse下配置使用Hadoop插件
    Hadoop节点热拔插
    剖析为什么在多核多线程程序中要慎用volatile关键字?
    MapReduce 模式、算法和用例(MapReduce Patterns, Algorithms, and Use Cases)
    并行编程中的“锁”难题
    配置 eclipse 编译、开发 Hadoop(MapReduce)源代码
    HBASE松散数据存储设计初识
  • 原文地址:https://www.cnblogs.com/mengyu/p/5112240.html
Copyright © 2011-2022 走看看