Python文件读取和拆分

问题描述 投票:0回答:2
file ="data.txt"
data=[]
with open(file) as i:
    data=i.readlines()    
for i in data:
        a=i.replace(".",";")
        a.split(";")
        newdata.append(a)
        print(a[1])

所以,如果我知道数据现在是一个字符串列表,是吗?我想用.替换;并将其拆分为字符串列表并保存。

示例data.txt:

  1. 烧烤;状况良好; 5000
  2. 儿童自行车; 14“; 10,000

如果我在读取数据变量后知道得很好:

[第一烧烤;状况良好; 5000] //0.index

[第4儿童自行车; 14“; 10000] //1.index

我想要的是什么:

[[1] [烧烤] [状况良好] [5000]] //0.index

[[4] [儿童自行车] [14“] [10000]] // [1] [1]:[儿童自行车]

我错过了什么?

python readline non-ascii-characters
2个回答
1
投票

示例代码段

str = "1;2;3;4"
parts = str.split(";")
final_array = [[e] for e in parts]
print final_array

输出[['1'],['2'],['3'],['4']]


1
投票

你可以这样做:

file = "data.txt" 
data, newdata = [], []
with open(file) as i: 
    data = i.readlines() 
for i in data:
    a = i.replace(".",";")
    newdata.append([[j] for j in a.split(";")])
print(newdata)

# [[['1'], [' grillsütő'], [' jó állapotú'], [' 5000']],   
#  [['4'], [' gyerek bicikli'], [' 14"-os'], [' 10000']]]   

如果你想删除列表中项目周围不必要的空格,你可以做strip

newdata.append([[j.strip()] for j in a.split(";")])
© www.soinside.com 2019 - 2024. All rights reserved.