在使用对象的for循环时获取ID字段
每次运行时,获取for
数字的最佳方法是什么?
代码:
fields = []
objects = otherobjects.all()
for object in objects
fields.append(('id_is_#', object))
我想给# place加一个ID。这个ID会以递增的方式生成。
3 个回答
0
字符串调制在这里更合适。
fields.append(("id_is_%s" % id, object))
补充说明:稍微调整了一下风格,如果你想表达的意思有点不同,这里有一个更好的例子。
for obj in objects:
fields.append(("id_is_%s" % obj.id, obj)
1
列表推导式:
objects = otherobjects.all()
fields = [('id_is_%d' % id, ob) for id, ob in enumerate(objects)]
把'object'当作变量名可能会引发一些问题...
2
在编程中,有时候我们需要处理一些数据,这些数据可能会有不同的格式或者类型。比如说,你可能会遇到数字、文字或者日期等不同类型的数据。为了让程序能够正确地理解和处理这些数据,我们需要将它们转换成程序能够识别的格式。
这就像是你在学习一门新语言时,可能需要把一些句子翻译成你熟悉的语言,才能理解它们的意思。在编程中,这种转换的过程就叫做“类型转换”。
有些编程语言会自动帮你做这种转换,但有时候你需要手动指定怎么转换。比如说,如果你有一个数字和一个字符串(就是一串文字),你可能想把数字变成字符串,或者把字符串变成数字,这样才能进行计算或者比较。
总之,理解数据的类型和如何转换它们是编程中非常重要的一部分,这样才能让你的程序正常运行。
fields = []
objects = otherobjects.all()
for id, obj in enumerate(objects)
fields.append(('id_is_' + id, obj))