簡體   English   中英

如何打印不帶括號和逗號的列表

[英]How to print a list without brackets and commas

我有一個文件,

6802496011442316593 1625090609  51048468525236  aaa=1111|bbbb=15|cccc=216|dddd=1625090604|eeee=5|ffff=12000|ggg=brtnrn=|hhhh=4|ii=lfp|ts=1625090609
6802496011442316593 1625090609  51048468525236  aaa=1111|bbbb=15|cccc=216|dddd=1625090604|eeee=5|ffff=12000|ggg=brtnrn=|hhhh=4|ii=lfp|ts=1625090489
6802496011442316593 1625090609  51048468525236  aaa=1111|bbbb=15|cccc=216|dddd=1625090604|eeee=5|ffff=12000|ggg=brtnrn=|hhhh=4|ii=lfp|ts=1625090549
6802496011442316593 1625090609  51048468525236  aaa=1111|bbbb=15|cccc=216|dddd=1625090604|eeee=5|ffff=12000|ggg=brtnrn=|hhhh=4|ii=lfp|ts=1625090599
6802496011442316593 1625090609  51048468525236  aaa=1111|bbbb=15|cccc=216|dddd=1625090604|eeee=5|ffff=12000|ggg=brtnrn=|hhhh=4|ii=lfp|ts=1625090599

我從中提取沒有“ts =”的最后一個元素“ts = 1625090609”:

with open(inputt, "r") as f1:
    for line in f1:
        exp=(line.split("\t")[3])
        params=(exp.split("|"))
        extraparamts=list()
        for param in params:
            if "ts=" in param:
                extraparamts.append(param[3:-1])
        print(extraparamts)   

列出:

['1625090429']
['1625090489']
['1625090549']
['1625090599']
['1625090599']

我想在沒有括號和逗號的輸出中打印它,並且在單獨的行中,如下所示:

1625090429
1625090489
1625090549
1625090599
1625090599

只是為了更容易對相同的文件進行排序和比較,但不是排序文件。 不幸的是,似乎

print(*tslist, sep=",")   

對我不起作用。 你能告訴我我做錯了什么嗎? 我已經嘗試過 itertools 和

嘗試:

print(*tslist[0].splitlines(), sep="\n")   

根據您的編輯編輯答案,添加了正則表達式

import re

extraparamts = []
with open(inputt, "r") as f1:  
    f1 = f1.read()
    for line in f1.splitlines():  # you can ignore splitlines if your data does not require it
        if "ts" in line:
            matches = re.findall("ts.*", line)
            extraparamts.append(str(matches)[5:-5])
            
    

for data in extraparamts:
    print(data)

會給

1625090
1625090
1625090
1625090
1625090

對於列表

試試這個:

list = ['1625090429','1625090489','1625090549','1625090599','1625090599']
for item in list:
    print(item)

輸出:

1625090429
1625090489
1625090549
1625090599
1625090599

對於列表中的列表

試試這個:

list = [['1625090429'],['1625090489'],['1625090549'],['1625090599'],['1625090599']]
for item in list:
    for x in item:
        print(x)

輸出:

1625090429
1625090489
1625090549
1625090599
1625090599

暫無
暫無

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

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