首页 > 代码库 > 《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表
《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表
若列表中某元素存在则返回之
任务:
你有一个列表L,还有一个索引号i,若i是有效索引时,返回L[i],若不是,则返回默认值v
解决方案:
- 列表支持双向索引,所以i可以为负数
>>> def list_get(L,i,v=None): if -len(L)<= i < len(L): return L[i] else: return v >>> list_get([1,2,3,4,5,6],3)4
- 异常机制
>>> def list2_get(L,i,v=None): try: return L[i] except IndexError: return ‘ERror‘ >>> list2_get([1,2,3,4,5,6],7)‘ERror‘
在无须共享引用的条件下创建列表的列表
任务:
创建一个多维度的列表,切同时避免隐式的引用共享。
解决方案:
使用列表推导创建一个5 x 10的全为0的矩阵:
>>> test_list = [[0 for x in range(5)] for column in range(10)]>>> test_list[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。