相关疑难解决方法(0)

如何检查列表中是否有以下项目之一?

我试图找到一个简短的方法来查看列表中是否有以下任何项目,但我的第一次尝试不起作用.除了编写一个完成此功能的函数之外,还有一种简短的方法可以检查列表中是否存在多个项目之一.

>>> a = [2,3,4]
>>> print (1 or 2) in a
False
>>> print (2 or 1) in a
True
Run Code Online (Sandbox Code Playgroud)

python

203
推荐指数
9
解决办法
35万
查看次数

Python的任何和所有功能如何工作?

我想了解如何any()all()Python的内置函数的工作.

我试图比较元组,以便如果任何值不同,那么它将返回True,如果它们都是相同的,它将返回False.他们如何在这种情况下返回[False,False,False]?

d是一个defaultdict(list).

print d['Drd2']
# [[1, 5, 0], [1, 6, 0]]
print list(zip(*d['Drd2']))
# [(1, 1), (5, 6), (0, 0)]
print [any(x) and not all(x) for x in zip(*d['Drd2'])]
# [False, False, False]
Run Code Online (Sandbox Code Playgroud)

据我所知,这应该输出

# [False, True, False]
Run Code Online (Sandbox Code Playgroud)

因为(1,1)是相同的,(5,6)是不同的,并且(0,0)是相同的.

为什么所有元组的评估为False?

python

199
推荐指数
6
解决办法
26万
查看次数

Pythonic方法检查条件是否适用于列表的任何元素

我有一个Python列表,我想检查是否有任何元素是否定的.Specman有has()列表的方法:

x: list of uint;
if (x.has(it < 0)) {
    // do something
};
Run Code Online (Sandbox Code Playgroud)

itSpecman关键字在哪里依次映射到列表的每个元素.

我觉得这很优雅.我查看了Python文档,找不到类似的东西.我能想到的最好的是:

if (True in [t < 0 for t in x]):
    # do something
Run Code Online (Sandbox Code Playgroud)

我发现这相当不优雅.有没有更好的方法在Python中执行此操作?

python list

100
推荐指数
3
解决办法
9万
查看次数

如何检查列表中是否包含以下所有项目?

我发现,有一个相关的问题,关于如何查找列表中是否存在至少一个项目:
如何检查下列项目之一是否在列表中?

但是,查找列表中是否存在所有项目的最佳和pythonic方法是什么?

通过文档搜索,我找到了这个解决方案:

>>> l = ['a', 'b', 'c']
>>> set(['a', 'b']) <= set(l)
True
>>> set(['a', 'x']) <= set(l)
False
Run Code Online (Sandbox Code Playgroud)

其他解决方案是:

>>> l = ['a', 'b', 'c']
>>> all(x in l for x in ['a', 'b'])
True
>>> all(x in l for x in ['a', 'x'])
False
Run Code Online (Sandbox Code Playgroud)

但在这里你必须做更多的打字.

还有其他解决方案吗?

python list inclusion

97
推荐指数
4
解决办法
11万
查看次数

从列表中删除项目时出现奇怪的结果

我有这段代码:

numbers = range(1, 50)

for i in numbers:
    if i < 20:
        numbers.remove(i)

print(numbers)
Run Code Online (Sandbox Code Playgroud)

但我得到的结果是:

[2,4,6,8,10,12,14,16,18,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35 ,36,37,38,39,40,41,42,43,44,45,46,47,48,49]

当然我希望结果中没有出现20以下的数字,我假设我在删除时做错了.

python loops list

32
推荐指数
3
解决办法
5844
查看次数

deMorgan规则解释道

您能否尽可能简单地解释deMorgan规则(例如,对于只有中学数学背景的人)?

demorgans-law boolean-operations

21
推荐指数
3
解决办法
2万
查看次数

Python断言列表中的所有元素都不是无

我想知道我们是否可以断言列表中的所有元素都不是None,因此 whilea = None会引发错误。

样本清单是[a, b, c]

我已经尝试过了,如果任何一个元素不是,assert [a, b, c] is not None它就会返回,但不会验证所有元素。你能帮忙想一下吗?谢谢!!TrueNone

python assert

7
推荐指数
1
解决办法
9344
查看次数

使用'和'关键字链接语句

我这样做是这样的:

if ycoords[0] > 0 and ycoords[1] > 0 and ycoords[2] > 0:
    # do stuff
Run Code Online (Sandbox Code Playgroud)

您可以通过执行以下操作来缩短此代码吗?

if (ycoords[0] and ycoords[1] and ycoords[2]) > 0:
    # do stuff
Run Code Online (Sandbox Code Playgroud)

python python-3.x

6
推荐指数
1
解决办法
131
查看次数

如何在python中动态创建return语句

我的字典在下面

我在字典里面搜索下面的字典

test=[ { 'id': '1', 'name': 'A', 'businessArea': [ 'Accounting' ], 'Role': [ 'Developer' ], 'Designation': [ 'L2' ] }, { 'id': '2', 'name': 'B', 'businessArea': [ None ], 'Role': [ 'None' ], 'Designation': [ 'None' ] }, { 'id': '3', 'name': 'C', 'businessArea': [ 'Engineering' ], 'Role': [ 'Tester', 'Developer' ], 'Designation': [ 'L1' ] } ]
Run Code Online (Sandbox Code Playgroud)

我的代码在下面工作正常并且只返回一个

def contains(item, field, values):
    if field:
        item = item.get(field)     
    if item is None:
        return None                
    if isinstance(item, str):
        return item …
Run Code Online (Sandbox Code Playgroud)

python

4
推荐指数
1
解决办法
292
查看次数

在 Python 中检查二维数组中的所有元素是否都等于 1

除了遍历嵌套循环并检查每个值是否等于 1 之外,最常用的 Python 方法是什么?

python arrays

3
推荐指数
1
解决办法
7377
查看次数