如何打印Python子字符串的一部分?

时间:2013-07-15 17:59:24

标签: python python-2.7

我有一个字符串数组,里面填充了较小的字符串数组,我将其拆分为三个字符串。它看起来像这样(除了更多):

conv = ('http-get:*:audio/xxx', ':', 'YYY.ORG_XXXXXXXXXX;YYY.ORG_FLAGS=97570000000000000000000000000'), ('http-get:*:video/xxx', ':', 'YYY.ORG_PN=XXXXXXXXXXX;YYY.ORG_FLAGS=ED100000000000000000000000')

我真正想要的这些数组中唯一的部分是列表中的第三项。我该如何才能打印第三个项目?我的问题是这是一个数组内的数组。

3 个答案:

答案 0 :(得分:1)

基本上循环遍历conv元组并存储/打印出每个元素中的第二个对象。它可以作为传统的for-loop或使用列表推导来完成。试试这个 -

>>> [i[2] for i in conv]
['YYY.ORG;YYY.ORG_FLAGS=97570000000', 'YYY.ORG_PN=XXXXXXXXXXX;YYY.ORG_FLAGS=ED100000']

答案 1 :(得分:0)

与许多其他事情一样,解决方案是列表理解。

array = [[],[] etc. #your array]
print " ".join([item[2] for item in array])
>>>YYY.ORG;YYY.ORG_FLAGS=97570000000 YYY.ORG_PN=XXXXXXXXXXX;YYY.ORG_FLAGS=ED100000

基本上,这里的关键部分是行:

[item[2] for item in array]

迭代数组并返回它找到的每个对象的第三个值(零索引)。

For loop equivalent:

result = []
for item in array:
    result.append(item[2])

答案 2 :(得分:0)

你可以尝试通过扩展来构建一个元组

>>> conv3 = tuple(x[2] for x in conv)

如果你想打印它们,你可以使用

>>> ', '.join(x[2] for x in conv)

它能做你想做的吗?