簡體   English   中英

Python3防止嵌套列表並在列表中顯示值的位置/索引

[英]Python3 preventing nested list and show position/index of values in list

如標題所示,我從兩次拆分中得到了一個嵌套列表。

“” .join沒有幫助解決此問題。 我也想不出如何在列表中打印單詞的位置。

目的是在選項卡(有效)上拆分id用戶文本單詞,並在列表中顯示其位置。

import sys
def main():
    olist = []
    for line in sys.stdin:
        i,u,t,w = line.split('\t')

        olist.append(w.split())
        print(olist)
        for num,name in enumerate(olist):
            print(num, name)

輸出打印(olist):

[['RT', '@AfshinEllian1', ':', 'Kennelijk', 'vinden', 'ze', 'daar', 'aan', 'die', 'gezellige', 'tafel', 'normaal', 'dat', 'steltje', 'barbaren', 'onze', 'grondwettelijke', 'rechten', 'bedreigen', '.', 'Zouden', 'we', 'ook', 'voor', 'andere', 'buitenwettelijke', 'dreigingen', 'moeten', 'capituleren', '?', 'Wat', 'een', 'door', 'ons', 'gesubsidieerde', 'domheid', '!', '#laatop1', '#cartoonwedstrijd']]

輸出打印(數字,名稱):

0 ['RT', '@AfshinEllian1', ':', 'Kennelijk', 'vinden', 'ze', 'daar', 'aan', 'die', 'gezellige', 'tafel', 'normaal', 'dat', 'steltje', 'barbaren', 'onze', 'grondwettelijke', 'rechten', 'bedreigen', '.', 'Zouden', 'we', 'ook', 'voor', 'andere', 'buitenwettelijke', 'dreigingen', 'moeten', 'capituleren', '?', 'Wat', 'een', 'door', 'ons', 'gesubsidieerde', 'domheid', '!', '#laatop1', '#cartoonwedstrijd']

所需的輸出=

RT [0]
@AfshinEllian1 [1]
: [2]
Kennelijk [3]

等等

如果我正確理解您的問題,請執行以下操作:

  olist.append(w.split())

沒有做你想要的。 您需要擴展列表:

  olist.extend(w.split())

合並兩個列表。

無需將其拆分兩次,只需通過以下方式直接打印即可:

import sys

def main():
    for line in sys.stdin:
        for num, name in enumerate(line.split("\t")):
            print("{} [{}]".format(name.strip(), num))

main()

# next line is input line
This    is  a   test

# and the output for it ...
This [0]
is [1]
a [2]
test [3]

如果要進行編號,也可以使用此代碼。 在這里,您只需使用+運算符即可連接列表,這可能就是您想要的。

def main():
    olist = []
    for line in sys.stdin:
        olist += [name for name in line.split("\t")]
        for num, name in enumerate(olist):
            print("{} [{}]".format(name.strip(), num))

使用的.strip()方法只是簡單的修飾,因為sys.stdin還將捕獲行分隔符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM