python – 灵活性的一个问题:索引变量与常量
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 灵活性的一个问题:索引变量与常量,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1177字,纯文字阅读大概需要2分钟。
内容图文
考虑以下假设情况.
作为您在python中开发的应用程序的一部分,您必须格式化对象列表,并将每个后续项目分配给提供的关键字作为元组.这是语法:
entries = [keyword, [obj1, obj2, obj3, ...]] # Original list of object entries
formatted = [(keyword, obj1), (keyword, obj2), (keyword, obj3), ...]
这是你提出的功能(让我知道这是否更有效):
def format(keyword, entries):
return [(keyword, x) for x in entries[1][0]]
这是应用的功能:
foo = format(entries[0], entries[1])
灵活性问题
请注意,format函数中的entries变量具有静态索引整数1和0.假设您预计新术语可能会附加到条目列表中.您通常会使用索引变量而不是常量(期望为将进入列表的后续项增加常量),如果是,您会使用本地或全局索引吗?您如何在代码中考虑这种灵活性?
解决方法:
您正在向函数传递关键字和一维列表.为什么要打扰函数定义中的索引?正如我写的那样.
e = ['spam', ['aa','bb','cc','dd']]
def format(keyword, entries):
return [(keyword, x) for x in entries[1][0]]
format(e[0], e[1])
[('spam', 'b')]
根据对象的不同,您可能会收到索引错误.函数中不需要索引.
def format(keyword, entries):
return [(keyword, x) for x in entries]
format(e[0], e[1])
[('spam', 'aa'), ('spam', 'bb'), ('spam', 'cc'), ('spam', 'dd')]
马丁诺在我没有读过的评论中已经回答了这个问题,所以应该归功于信用.抱歉.
内容总结
以上是互联网集市为您收集整理的python – 灵活性的一个问题:索引变量与常量全部内容,希望文章能够帮你解决python – 灵活性的一个问题:索引变量与常量所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。