zoukankan      html  css  js  c++  java
  • Python之切片操作

    1、列表list中使用

    1、range()生成器

     就是list取值的一种方式。

    • 生成器range(),用于写列表的范围,如果只写一个数,就表示从0开始,到写入的值-1:
    l=list(range(10))#生成的是[0,1,2,3,4,5,6,7,8,9]
    • 如果写入范围,则是从写入的第一个数值开始,从写入的第二个数-1结束:
    l=list(range(1,11))
    l=['a','b','c','d','e','j','k','l','m','n','o']
    #   0   1   2   3   4   5   6   7   8   9   10
    print(l[2:8])#顾头不顾尾
    print(l[:5])#如果冒号前面没写的话,代表从0开始取的
    print(l[4:])#如果冒号后面没写的话,代表取到最后
    print(l[:])#如果冒号前后都没写的话,代表取全部

    切片操作的特点:

    • 顾头不顾尾
    • 使用range()生成器时,如果冒号前面没写的话,代表从0开始取元素
    • 使用range()生成器时,如果冒号后面没写的话,代表取到最后的元素
    • 如果冒号前后都没写的话,代表取全部

    2、 步长

    步长是从自己元素开始,再走几步到想要的元素:

    nums=list(range(1,11))
    print(nums[1::2])#打印偶数
    #1 2 3 4 5 6 ...10
    print(nums[::2])#打印奇数
    print(nums[::-2]) #取偶数,从右往左取值

    步长特点:

    • 如果步长是正数的话,就从前往后开始取值;
    • 如果步长是负数的话,就从后往前开始取值,类似于reverse()。

     2、字符串中使用

    字符串也有下标,使用上跟在列表中一致:

    words='中秋节要上课'
    print(words[0])
    print(words[::-1])

     3、面试题

    #判断一个字符串是否是回文,即:字符串和它反转后的字符串是否相等,如果相等就是回文。
    s='上海自来水来自海上'
    # 1232321
    # 1111
    # 回文算法,反过来倒过去都一样
    
    for i in range(10):
        s = input('请输入一个字符串:')
        if len(s)<2:
            print('字符串长度必须大于2')
        elif s==s[::-1]: #.reverse()方法是列表中的方法,字符串中没有,因此只能用切片方法
            print('是回文')
        else:
            print('不是回文')
    每天进步一点点,快乐生活多一点。
  • 相关阅读:
    gitlab搭建
    .NET Core 跨平台物联网开发:设置委托事件(二)
    .NET Core 跨平台物联网开发:连接阿里云IOT(一)
    Orange Pi 3 GPIO 笔记
    树莓派踩坑备忘录 -- 使用 Linux
    .NET Core / C# 开发 IOT 嵌入式设备的个人见解
    阿里云 IOT 对接设备开发 C# 开发设备对接阿里云 IOT平台
    跨平台开发 -- C# 使用 C/C++ 生成的动态链接库
    .NET Core 使用 EF 出错的解决方法
    arm 开发板更新 gcc/gcc++ | Debain 更新 gcc,无需编译直接更新 gcc
  • 原文地址:https://www.cnblogs.com/yiruliu/p/9567466.html
Copyright © 2011-2022 走看看