4 回答
TA贡献1827条经验 获得超9个赞
您可以使用:
for i, _ in enumerate(ls):
print(*[e for j, e in enumerate(ls) if i != j])
输出:
Earth Mars Venus
Sun Mars Venus
Sun Earth Venus
Sun Earth Mars
TA贡献1802条经验 获得超10个赞
所以我听了quamrana的帖子,他说编辑我正在迭代的集合是一件坏事,所以我使用了for循环的组合加上exe的一些答案,并提出了这个:
ls = ['Sun','Earth','Mars','Venus']
for planet in ls:
print('Current: ' + repr(planet))
for i in ls:
if i not in planet:
print(i)
print('\n')
感谢前任和夸姆拉纳在这里帮助我。
TA贡献1796条经验 获得超7个赞
我觉得就像
ls = ['sun','earth','mars','venus'];
a = 'earth';
for i in range (len(ls)):
if ls[i] != a:
print(ls[i]);
其中a是你不想显示的行星,因为我不记得如何在python lol中输入值。
len()函数返回数组的长度,非常有用,我希望它能帮助你
TA贡献1852条经验 获得超7个赞
# these work if no duplicates in list
for item in lst:
print(set(lst) - set([item])
for item in lst:
print([I for I in lst if I != item])
# this works if potential duplicates
for idx, item in enumerate(lst):
if idx == 0:
print(lst[1:])
elif idx == len(lst) - 1:
print(lst[:-1])
else:
print(lst[0:idx] + lst[idx + 1:])
添加回答
举报