「每天一个Python实用技巧」2.列表范围取值,越界不抛异常的特性应用

大家好,我是冲冲,一名主要从事Python服务端开发的程序猿。
以后我会时不时在这里和大家分享服务端软件实际开发工作中用到的实用技术,这些都是历年实践经验的积累,希望大家喜欢!



今天给大家分享的实用技巧是列表范围取值,越界不抛异常的特性应用,希望对大家有所帮助和启发。

首先,我们来看下列表的范围取值样例。
示例代码如下:

arr = [0, 1, 2, 3, 4]

# 普通下标范围的用法
print('arr[0:3]:', arr[0:3])
# arr[0:3]: [0, 1, 2]

# 下标范围的起始值越界后不raise异常,返回为空list
print('arr[10:20]:', arr[10:20])
# arr[10:20]: []
print('arr[30:-1]', arr[30:-1])
# arr[30:-1] []

从上面的样例我们可以看出,当使用范围取值的方式获取列表中的元素时,当范围的值越界时不会抛出异常,会返回空列表。

这个特性有什么实用性呢?
有的,比如:当我们需要调用批量接口将数据提交到服务端时,在数据量大,且服务端批量接口有最大数据条数控制时(这是肯定有的!)。
这时,我们就要使用到循环,将数据分组后提交了。
怎么用呢? 请看下面的示例代码:

################################
# 共10个元素,每3个一组进行业务操作
################################
arr = [0, 1, 31, 3, 4, 32, 6, 7, 33, 9]

interval = 3
start_index = 0
end_index = start_index + interval

# 即使越界也不会raise异常
elements = arr[start_index: end_index]
while elements:
    print('>>> do something about ', elements)
    start_index = end_index
    end_index = start_index + interval

    # 即使越界也不会raise异常
    elements = arr[start_index: end_index]

结果输出:

    >>> do something about  [0, 1, 31]
    >>> do something about  [3, 4, 32]
    >>> do something about  [6, 7, 33]
    >>> do something about  [9]

相信大家已经了解了列表范围取值,越界不抛异常的特性应用。
好啦,今天的实用技巧分享就到这里!



欢迎大家多多订阅我,每天分享一个实用知识点,共成长,交个朋友!下期见~~
微信公众号: chongtanjishu
GitHub: https://github.com/streamDream
***具有MySQL的ORM和Client功能的库(pip install mysql-stream),欢迎大家下载使用,多多交流】
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值