簡體   English   中英

從readlines()中刪除行

[英]Deleting lines from readlines()

f = open('df.txt','r')
l = f.readlines()
for x in l:
    print(x)
    for n in l:
        if x == n:
            l.remove(n)

我想創建一個列表,按順序打印變量,如果有,請從列表中刪除相同的變量。 示例:一二三一四有四1-它必須打印“一”,並從列表中刪除[0]和[3]。

但是我運行時會跳過變量。

最好不要在迭代過程中更改列表的長度,因此將想要的內容追加到新列表中,然后跳過不需要的內容

mylist = []
f = open('df.txt','r')
l = f.readlines()
for x in l:
    print(x)
    for n in l:
        if x != n:
            mylist.append(x)

最新版本的Python具有保留其插入順序的Dict實現,因此您還可以編寫:

lines = 'one two three one four'.split(' ')

list(dict((l, None) for l in lines))

輸出:

['one', 'two', 'three', 'four']

暫無
暫無

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

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