python笔记-3.1章_切片

#自学Python的学习笔记

第三章Python的高级特性

python的高级特性可以提高开发效率,让代码更简洁

切片可以让我们快速的从list,tuple,str中获取想要的部分

 

L=list(range(10))

 

如果第一个索引是0,还可以省略···

L[:3]  #表示从索引0开始取,直到索引3为止,但是不包括索引3。即索引0, 1, 2,正好是3个元素

L[:10:2]  #前10个数,步长为2

L[::5]  #所有数,步长为5

L[:]  #原样复制一个list

 

#也可以倒着取,倒数第一个元素索引-1,也是包前不包后

L[-1]  #表示取最后一个元素,格式为int

>>> a = L[-1]
>>> a
9

L[-2:]  #表示取最后两个元素,格式为list

L[:-1]  #不显示最后一个元素

L[-2:-1]  #取出倒数第二个元素,格式为list

>>> a = L[-2:-1]
>>> a
[8]

L[::-1]  #倒序排列元素步长为-1,即[10,9,8...]

L[::-2]  #倒序排列元素步长为-2,即[10,8,6...]

 

#  字符串的操作

>> 'ABCDEFG'[:3]
'ABC'

>>> 'ABCDEFG'[::2]
'ACEG'

取字符串建议只用切片,不用下标,在脚本里,有时用下标取值会报错

作业:

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

# -*- coding: utf-8 -*-

 

def trim(s):
    if s=="":
        s=s
    elif s[-1]==" ":
        s=s[:-1]
        return trim(s)
    elif s[0]==" ":
        s=s[1:]
        return trim(s)
    return s


if trim('hello  ') != 'hello':
    print('测试失败!')
elif trim('  hello') != 'hello':
    print('测试失败!')
elif trim('  hello  ') != 'hello':
    print('测试失败!')
elif trim('  hello  world  ') != 'hello  world':
    print('测试失败!')
elif trim('') != '':
    print('测试失败!')
elif trim('    ') != '':
    print('测试失败!')
else:
    print('测试成功!')

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值