我有两个列表Z1和Z2。我正在比较这两个列表,如果至少有一个子列表Z1出现在 中Z2,我想打印完整的Z1。我介绍了当前和预期的输出。
Z1=[[0, 4], [0, 5], [4, 5]]
Z2=[[6, 5], [4, 9], [4, 8], [5, 3], [0,4]]
for i in range(0,len(Z1)):
if (Z1[i]==Z2[i]):
print("Z1 =",Z1)
Run Code Online (Sandbox Code Playgroud)
当前输出为
(Blank)
Run Code Online (Sandbox Code Playgroud)
预期输出是
Z1=[[0, 4], [0, 5], [4, 5]]
Run Code Online (Sandbox Code Playgroud) 我有一个清单A。我通过添加1到前一个列表的每个元素来生成一个新列表,最后得到一个组合列表B+C+D。有没有一种方法可以做到这一点?
A=[12,8,4,0]
B=[i+1 for i in A]
C=[i+1 for i in B]
D=[i+1 for i in C]
print(B+C+D)
Run Code Online (Sandbox Code Playgroud)
当前和预期的输出是
[13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3]
Run Code Online (Sandbox Code Playgroud) 我有一个包含元素的列表B。我想使用这些元素创建所有可能的对,如预期输出中所示。但我收到错误。我如何解决它?
import numpy as np
import itertools
B=[ 1, 2, 5, 7, 10, 11]
combination=[]
for L in range(len(B) + 1):
for subset in itertools.combinations(B, L):
combination.append([list(sub) for sub in subset])
combination
Run Code Online (Sandbox Code Playgroud)
错误是
in <listcomp>
combination.append([list(sub) for sub in subset])
TypeError: 'int' object is not iterable
Run Code Online (Sandbox Code Playgroud)
预期输出是
[1,2],[1,5],[1,7],[1,10],[1,11],
[2,1],[2,5],[2,7],[2,10],[2,11],
[5,1],[5,2],[5,7],[5,10],[5,11],
[7,1],[7,2],[7,5],[7,10],[7,11],
[10,1],[10,2],[10,5],[10,7],[10,11],
[11,1],[11,2],[11,5],[11,7],[11,10]
Run Code Online (Sandbox Code Playgroud) 我有一个A包含True, False元素的 numpy 数组。我想打印所有包含False元素的索引。但是,我收到错误。我提出预期的输出:
import numpy as np
A=np.array([[False],
[False],
[ True],
[False],
[False]])
for i in range(0,len(A)):
if (A[i]==['False']):
print(i)
Run Code Online (Sandbox Code Playgroud)
错误是:
FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
if (A[i]==['False']):
Run Code Online (Sandbox Code Playgroud)
预期输出是:
[0,1,3,4]
Run Code Online (Sandbox Code Playgroud)