我在Python脚本中声明了以下字典:
my_dictionary = {'course': row[0],
'vars': [
{'name': 'FIRST_NAME', 'content': row[1]},
{'name': 'COURSE_NAME', 'content': row[2]},
{'name': 'HOLE_COUNT', 'content': row[3]},
{'name': 'SHORTNAME', 'content': row[4]},
{'name': 'SSS', 'content': (5 in row: row[5])},
{'name': 'COURSE_RECORD', 'content': (6 in row: row[6])},
]
}
我正在尝试检查列表项是否存在的语法:
{'name': 'SSS', 'content': (5 in row: row[5])},
{'name': 'COURSE_RECORD', 'content': (6 in row: row[6])},
此检查可以完成吗?
我的语法不正确,因为出现以下错误:
SyntaxError: invalid syntax
答案 0 :(得分:1)
尝试一下:
my_dictionary = {'course': row[0],
'vars': [
{'name': 'FIRST_NAME', 'content': row[1]},
{'name': 'COURSE_NAME', 'content': row[2]},
{'name': 'HOLE_COUNT', 'content': row[3]},
{'name': 'SHORTNAME', 'content': row[4]},
{'name': 'SSS', 'content': (row[5] if len(row)>5 else "")},
{'name': 'COURSE_RECORD', 'content': (row[6] if len(row)>6 else "")},
]
}
答案 1 :(得分:0)
这是您如何查看列表中是否有第五项。这是来自交互式控制台(python)。
从一个列表开始,我可以看到它有多少个元素:
>>> my_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> len(my_list)
7
它有七个要素。如果我尝试获取第八项(记住索引从零开始),则会收到错误消息:
>>> my_list[0] # Looks good
'a'
>>> my_list[8] # oh no, the eight item doesn't exist
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
因此,最简单的方法可能总是尝试通过索引获取项目,然后捕获该错误。但这不是很有效。如果您有默认设置,则更简单的方法是:
>>> my_list[6] if len(my_list) > 6 else 'my_default'
'g'
>>> my_list[7] if len(my_list) > 7 else 'my_default'
'my_default'
>>>
答案 2 :(得分:0)
这在python 3中会更容易(您应该记住python2已达到eol)
这对我有效
System.out.println(g.getClass().getName());