📜  Python – 获取元组字符串中的第 N 列元素

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

Python – 获取元组字符串中的第 N 列元素

还有一个特殊的问题,它可能不常见,但在Python编程中使用元组时可能会发生。由于元组是不可变的,它们很难操作,因此了解可能的变化解决方案总是有帮助的。本文解决了仅提取元组中每个字符串的第 N 个索引元素的问题。让我们讨论一些可以解决这个问题的方法。

方法#1:使用列表推导
几乎每个问题都可以使用列表推导作为幼稚方法的简写来解决,这个问题也不例外。在此,我们只需遍历每个列表,仅选择第 N 个索引元素来构建结果列表。

# Python3 code to demonstrate
# Nth column in Tuple Strings
# using list comprehension
  
# initializing tuple
test_tuple = ('GfG', 'for', 'Geeks')
  
# initializing N 
N = 1
  
# printing original tuple 
print("The original tuple : " + str(test_tuple))
  
# using list comprehsion
# Nth column in Tuple Strings
res = list(sub[N] for sub in test_tuple)
  
# print result
print("The Nth index string character list : " + str(res))
输出 :
The original tuple : ('GfG', 'for', 'Geeks')
The Nth index string character list : ['f', 'o', 'e']

方法 #2:使用next() + zip()
这个特定的任务也可以使用以上两者的组合以更有效的方式执行,使用迭代器来完成这个任务。 zip函数可用于将字符串元素绑定在一起。

# Python3 code to demonstrate
# Nth column in Tuple Strings
# using next() + zip()
  
# initializing tuple
test_tuple = ('GfG', 'for', 'Geeks')
  
# printing original tuple 
print("The original tuple : " + str(test_tuple))
  
# initializing N 
N = 1
  
# using next() + zip()
# Nth column in Tuple Strings
temp = zip(*test_tuple)
for idx in range(0, N):
    next(temp)
res = list(next(temp))
  
# print result
print("The Nth index string character list : " + str(res))
输出 :
The original tuple : ('GfG', 'for', 'Geeks')
The Nth index string character list : ['f', 'o', 'e']