📌  相关文章
📜  Python – 删除元组中第一次出现的 K

📅  最后修改于: 2022-05-13 01:55:15.689000             🧑  作者: Mango

Python – 删除元组中第一次出现的 K

有时,在使用Python元组时,我们可能会遇到需要删除元组中第一次出现的元素的问题。这种类型的问题可以应用于许多领域,例如学校编程。让我们讨论可以执行此任务的某些方式。

方法 #1:使用index() + loop + list slicing
上述功能的组合可以用来解决这个问题。在此,我们执行使用 index() 提取第一次出现的 K 的任务,并且列表切片用于在元素删除后重新排序元组。

# Python3 code to demonstrate working of 
# Remove first occurrence of K in Tuple
# Using index() + loop + list slicing
  
# initializing tuples
test_tuple = (5, 6, 4, 4, 7, 8, 4)
  
# printing original tuple
print("The original tuple : " + str(test_tuple))
  
# initializing K 
K = 4
  
# Remove first occurrence of K in Tuple
# Using index() + loop + list slicing
try:
    idx = test_tuple.index(K)
    res = test_tuple[:idx] + test_tuple[idx + 1:]
except ValueError:  
    res = test_tuple
  
# printing result 
print("Tuple after element removal : " + str(res))
输出 :
The original tuple : (5, 6, 4, 4, 7, 8, 4)
Tuple after element removal : (5, 6, 4, 7, 8, 4)

方法 #2:使用enumerate() + 生成器表达式
这是可以执行此任务的方式之一。这提供了一种解决此问题的线性方法。在此,我们使用 enumerate() 执行检查元素和索引的任务。

# Python3 code to demonstrate working of 
# Remove first occurrence of K in Tuple
# Using enumerate() + generator expression
  
# initializing tuples
test_tuple = (5, 6, 4, 4, 7, 8, 4)
  
# printing original tuple
print("The original tuple : " + str(test_tuple))
  
# initializing K 
K = 4
  
# Remove first occurrence of K in Tuple
# Using enumerate() + generator expression
res = tuple(ele for idx, ele in enumerate(test_tuple) if idx != test_tuple.index(K))
  
# printing result 
print("Tuple after element removal : " + str(res))
输出 :
The original tuple : (5, 6, 4, 4, 7, 8, 4)
Tuple after element removal : (5, 6, 4, 7, 8, 4)