Python按條件刪除巢狀列表中的元素

2021-08-28 13:42:12 字數 1398 閱讀 3891

今日在做深度學習過程中,資料採集的時候,因為粗心,coding有乙個小bug沒有看出,但是不影響資料採集。又因為資料採集量比較大,索性就按照出錯的方式,直接寫指令碼對資料進行處理,將bug抵消掉。

思路:(1)for迴圈遍歷,找出符合條件的元素,並將元素賦值成不會出現的資料,並做好count計數

(2)再建立乙個新的迴圈,在count中呼叫remove()函式

b=len(data)   #data是你要操作的巢狀列表

count = 0

for num in range(0,b):

data_get = data[b-1-num]

#print(data_get)

data_len =len(data_get)

#print(num)

if data_len==12: #符合的條件一

data[b-1-num-1]='0'

data[b-1-num-2]='0'

count=count+2 #

elif data_len==8: #符合的條件二

data[b-1-num-1]='0'

count=count+1

else:

continue

#刪除元素

for i in range(1,sum+1):

data.remove('0')

print(data)

csv刪除空白行:csv有時候拿到的資料是一行資料一行空白,可以按以下方式處理。當然如果你的資料是自己獲取,那麼,在儲存資料時,直接儲存為無空白行的格式。

import csv

csv_read = csv.reader(open("/home/windme/1kat-walk-c/rawdata_walk_c/raw_data/1.csv",'r'))#原檔案

out=open('data_1.csv','a')#儲存的檔案

csv_write = csv.writer(out,dialect='excel')#寫入檔案

data =

for i in csv_read:

#print(len(i))

#print(len(data))

len_data = len(data)

print(len_data)

for i in range(1,int(len_data/2)+1):

del data[i]

for data_in in data:

csv_write.writerow(data_in)

print(len(data))

#print(data)

python按條件拆分列表 按條件將列表拆分成塊

你為什麼不換個角度想想。你可以把每一次都對映成乙個dict import re from collections import defaultdict regex re.compile a z d a z t asdf 1 bhd uuu 2 ggg asdf 2 bhd uuu 1 ggg asd...

python 多維列表(巢狀列表)

python 多維列表 巢狀列表 姓名,年齡,工資 姓名,年齡,工資 姓名,年齡,工資 字串 姓名,年齡,工資 例如 張三,30,2000 str 張三,30,2000 l str.split print l emp list 單個人的資訊 info input 請輸入員工資訊 info list ...

Python 巢狀列表展開

問題1 對於列表形如 list 1 1,2 3,4,5 6,7 8 9 轉化成列表 list 2 1,2,3,4,5,6,7,8,9 的問題。python實現 普通方法 list 1 1,2 3,4,5 6,7 8 9 list 2 for in list 1 list 2 print list 2...