1、列表list中使用

1、range()生成器

就是list取值的一种方式。

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

切片操作的特点:

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

2、 步长

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

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

步长特点:

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

2、字符串中使用

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

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

3、面试题

  1. #判断一个字符串是否是回文,即:字符串和它反转后的字符串是否相等,如果相等就是回文。
  2. s='上海自来水来自海上'
  3. #
  4. #
  5. # 回文算法,反过来倒过去都一样
  6.  
  7. for i in range(10):
  8. s = input('请输入一个字符串:')
  9. if len(s)<2:
  10. print('字符串长度必须大于2')
  11. elif s==s[::-1]: #.reverse()方法是列表中的方法,字符串中没有,因此只能用切片方法
  12. print('是回文')
  13. else:
  14. print('不是回文')

Python之切片操作的更多相关文章

  1. Python字符串切片操作知识详解

    Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...

  2. python的切片操作

    切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割.注意这与你使用的索引操作符十分相似.记住数是可选的,而冒号是必须的. 切片操作符中的第一个数(冒号之前)表示切片开始的位置,第 ...

  3. Python利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法:

    这是一个最简单的自定义函数,自己调用自己,我的理解是这样的: 1.传一个s参数进行判断,如果有空字符它会切掉前后的空字符,返回一个新的s,这个新的s还有的话会继续执行这种重复的操作,类似于递归(博主不 ...

  4. python之切片操作,实现一个trim()函数,去除字符串首尾的空格.

    # -*- coding: utf-8 -*- def trim(s): if len(s)==0: return '' if s[:1]==' ': return trim(s[1:]) elif ...

  5. 彻底搞懂Python切片操作

        在利用Python解决各种实际问题的过程中,经常会遇到从某个对象中抽取部分值的情况,切片操作正是专门用于完成这一操作的有力武器.理论上而言,只要条件表达式得当,可以通过单次或多次切片操作实现任 ...

  6. Python array,list,dataframe索引切片操作 2016年07月19日——智浪文档

    array,list,dataframe索引切片操作 2016年07月19日——智浪文档 list,一维,二维array,datafrme,loc.iloc.ix的简单探讨 Numpy数组的索引和切片 ...

  7. Python序列的切片操作与技巧

    切片操作 对于具有序列结构的数据来说,切片操作的方法是:consequence[start_index: end_index: step]. start_index: 表示是第一个元素对象,正索引位置 ...

  8. 关于javascript里面仿python切片操作数组的使用方法

    其实在使用了好一段时间的 python之后,我觉得最让我念念不忘的并不是python每次在写函数或者循环的时候可以少用{}括号这样的东西(ps:其实也是了..感觉很清爽,而且又开始写js的时候老是想用 ...

  9. python学习之“切片操作从入门到精通”

    在python学习开发的过程中,我们总是不断的要对List(列表),Tuple(元组)有取值操作:假如我们有一个列表List1现在想取出1其中的前5个元素,改怎么操作呢? >>> L ...

随机推荐

  1. 思科4506E做ehterchannel故障排查

    思科4506E做ehterchannel故障排查 转载于:https://blog.51cto.com/eric1026/1910912 一.故障描述 某客户有两台4506E汇聚交换机,需要做ethe ...

  2. LeetCode算法题-Implement Stack Using Queues

    这是悦乐书的第193次更新,第198篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第54题(顺位题号是225).使用队列实现栈的以下操作: push(x) - 将元素x推 ...

  3. puppet 横向扩展(二)

    Table of Contents 1. 概述 2. 实验环境 3. 实验步骤 3.1. 机器B 的环境 3.1.1. 安装puppetmaster 以及 apache passenger 3.1.2 ...

  4. Linux 小知识翻译 - 「LDAP」

    这次聊聊「LDAP」. LDAP是「Lightweight Directory Access Protocol」的所有,从名字上可以看出是协议的一种. LDAP是访问数据库(层次型数据库)的组件.管理 ...

  5. C语言 实现逆置功能

    C语言 实现逆置功能 //凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 1. 字符串的逆置 方法1:利用数组 #include<stdio.h> ...

  6. (转)Spring Boot 2 (十):Spring Boot 中的响应式编程和 WebFlux 入门

    http://www.ityouknow.com/springboot/2019/02/12/spring-boot-webflux.html Spring 5.0 中发布了重量级组件 Webflux ...

  7. 2293: Distribution Center 中南多校

    Description The factory of the Impractically Complicated Products Corporation has many manufacturing ...

  8. UVA11059-Maximum Product(动态规划)

    Problem UVA11059-Maximum Product Accept:4769  Submit:38713 Time Limit: 3000 mSec  Problem Descriptio ...

  9. 【angularjs】使用angular搭建PC端项目,开关按钮

    方法一(使用指令) 1.指令(angular-ui-switch.js) angular.module('uiSwitch', []) app.directive('switch', function ...

  10. Spring配置中的"classpath:"与"classpath*:"的区别研究(转)

    Spring配置中的"classpath:"与"classpath*:"的区别研究(转)   概念解释及使用场景: classpath是指WEB-INF文件夹下 ...