Python高级特性(切片)

对这种经常取指定索引范围的操作,用循环十分繁琐,因此Python提供了切片操作符,能大大简化这种操作。

对应上面的问题,取前三个元素,用一行代码就可以完成切片:

 上面列表表示,从索引0开始索取,知道索引3为止,但比包括索引3,即0,1,2,正好三个元素。

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

也可以从索引1开始,取出2元素出来:

 类似的,既然python支持l[-1]取倒数第一个元素,那么他同样支持倒数切片,试试:

 

 

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Python高级特性包括但不限于以下内容: 1. 切片(Slicing):可以通过切片操作来获取列表、字符串、元组等序列类型的子序列。切片操作使用[start:end:step]的语法,可以灵活地选择需要的元素。 2. 迭代(Iteration):可以使用for循环来遍历列表、字符串、字典等可迭代对象的元素。在循环中,可以使用内置函数enumerate()来同时获取元素的索引和值。 3. 列表生成式(List Comprehension):可以使用简洁的语法来创建列表。列表生成式的语法为[expression for item in iterable if condition],可以根据条件筛选和转换元素。 4. 生成器(Generator):可以使用生成器函数或生成器表达式来创建生成器。生成器是一种特殊的迭代器,可以按需生成值,而不是一次性生成所有值。 5. 迭代器(Iterator):可以使用迭代器来遍历可迭代对象的元素。迭代器是一个实现了__iter__()和__next__()方法的对象,可以使用内置函数iter()来获取迭代器。 6. 其他高级特性还包括装饰器(Decorator)、上下文管理器(Context Manager)、匿名函数(Lambda Function)等。 以下是一个演示列表生成式和生成器的例子: 1. 列表生成式: ```python # 创建一个包含1到10的平方的列表 squares = [x**2 for x in range(1, 11)] print(squares) # 输出:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100] ``` 2. 生成器: ```python # 创建一个生成器,按需生成斐波那契数列的值 def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b fib = fibonacci() print(next(fib)) # 输出:0 print(next(fib)) # 输出:1 print(next(fib)) # 输出:1 print(next(fib)) # 输出:2 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值