pythonでリストの中のデータを分割する方法を紹介します。
事前準備
今回紹介するコードは少し前に投稿したコードをアップデートしていきます。
sample.txtというファイルを準備していただきたいです。
time ID 1......8 9.....16
1 0x0002 01EE11DD 01EE11DD
1 0x000E 01AA11DD 01CC11DD
2 0x0002 01EE11DD 01EE11DD
3 0x0002 01EE11DD 01EE11DD
4 0x0002 01EE11DD 01EE11DD
4 0x000E 01AA11DD 01CC11DD
コード紹介
今回のコードは以下です。
import os
##データの格納先を設定
time = []
ID = []
data=[]
data1 = []
data2 = []
##ファイルのデータ読み込み
dir_path = r'C:\Users\ro_ky\Documents'
file_name = 'sample.txt'
file_path = os.path.join(dir_path, file_name)
with open(file_path) as f :
lines = f.read()
##読み込んだデータの表示
print("読み込んだデータの表示")
print(lines)
##リストの中の改行ごとにリストを区切る関数
lines = lines.split("\n")
print("改行ごとにリストを区切った結果")
print(lines)
print("\n")
##リストの一行目と最終行を削除
del lines[0]
del lines[len(lines)-1]
##リストの中の" "ごとにリストを区切る
for i in range(len(lines)):
lines[i] = lines[i].split(" ")
print("スペースごとにリストを区切った結果")
print(lines)
print("\n")
##リストの中の" "を削除する
for i in range(len(lines)):
while True:
try:
lines[i].remove('')
except ValueError:
break
print("スペースをリストをから削除した結果")
print(lines)
print("\n")
コードの詳細紹介
ファイルのデータ読み込み
##ファイルのデータ読み込み
#↓sample.txtが保管されている場所
dir_path = r'C:\Users\ro_ky\Documents'
file_name = 'sample.txt'
file_path = os.path.join(dir_path, file_name)
#↓linesというリストに一括で保存する
with open(file_path) as f :
lines = f.read()
##読み込んだデータの表示
print("読み込んだデータの表示")
print(lines)
リストを改行(“\n”)で区切る
##リストの中の改行ごとにリストを区切る関数
lines = lines.split("\n")
print("改行ごとにリストを区切った結果")
print(lines)
print("\n")
リストの1列目と最終行を削除する
##リストの一行目と最終行を削除
del lines[0]
del lines[len(lines)-1]
リストを空白(” “)ごとに区切る
##リストの中の" "ごとにリストを区切る
for i in range(len(lines)):
lines[i] = lines[i].split(" ")
print("スペースごとにリストを区切った結果")
print(lines)
print("\n")
リスト内の空白を削除する
##リストの中の" "を削除する
for i in range(len(lines)):
while True:
try:
lines[i].remove('')
except ValueError:
break
print("スペースをリストをから削除した結果")
print(lines)
print("\n")
コメント