Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python:一个用于'的衬里;如果列表[0]==";"富",';当列表可能为空时_Python - Fatal编程技术网

python:一个用于'的衬里;如果列表[0]==";"富",';当列表可能为空时

python:一个用于'的衬里;如果列表[0]==";"富",';当列表可能为空时,python,Python,我真的不喜欢在循环和ifs中写这些: if len(list) != 0: #or just "if list:", but explicit better than implicit if list[0] == "foo": ... 您最喜欢的单衬里(或至少一个嵌套层)类似物是什么 编辑:对不起,这是我的一个愚蠢的问题,我在这里出了问题。但我觉得有些情况下,中的两个条件如果a和/或b一起写入,将导致异常,但仍然可以同时为真。我投票结束这个问题。如果您只想确保foo在列

我真的不喜欢在循环和ifs中写这些:

if len(list) != 0: #or just "if list:", but explicit better than implicit
    if list[0] == "foo":
        ...
您最喜欢的单衬里(或至少一个嵌套层)类似物是什么


编辑:对不起,这是我的一个愚蠢的问题,我在这里出了问题。但我觉得有些情况下,
中的两个条件如果a和/或b一起写入,将导致异常,但仍然可以同时为真。我投票结束这个问题。

如果您只想确保foo在列表中,您可以使用:

if list and list[0] == 'foo':
    ....
if 'foo' in my_list:
    do_something()
否则,如果列表的索引0需要是foo,我将使用:

if my_list and my_list[0] == 'foo':
    do_something()

你想实现什么?
如果len(list)!=0和list[0]==“foo”:…
?我不认为“显式优于隐式”规则适用于这里
if-somelist:
是测试非空性的标准习惯用法。如果bool(somecondition)为真,我们就不写
,如果somecondition:
,我们就写
。哎呀,对不起,我的大脑出故障了。谢谢我真的觉得,在某些情况下,我检查的两个条件可能会导致True,但一起会导致异常。在Python中,
执行“短路”求值,因此如果
列表
求值为false,则不会求值
列表[0]
。顺便说一下,使用
list
作为变量名是不好的做法;建议的缩写包括
lst
L
。如果使用
list
作为变量,则可以对
list
类进行“阴影”处理。(您仍然可以使用
type([])之类的技巧访问它,但不隐藏它更容易。