比如我有一组数据是这样的
但我只想将每一列第一个逗号,和第二个逗号后的数字提取出来,输出成一个只含两列的数据
比如第一行是0和14.9397,第二行是0和16.4322
请问这应该如何实现呢?
一定会采纳的!谢谢大家!
我再附一个之前提取第三列数据的代码,不过之前的数据是由空格进行分隔的,所以比较好做到
import codecs
f = codecs.open('D:\data\Grain size.txt', 'r', 'ansi')
line = f.readline() # 以行的形式进行读取文件
list1 = []
while line:
a = line.split()
b = a[3:4] # 这是选取需要读取的列
list1.append(b) # 将其添加在列表之中
line = f.readline()
f.close()
t = ' '
with open('D:/data/try.dat', 'w+') as f_out:
for i in list1: #为了把list1用i表示出来
for j in range(len(i[0])):
t = t + i[0][j] # list1里第i个元素(数)的第j个元素(数字)转化成字符串
print(j)
f_out.write(t)
f_out.write('\n')
t =' '
根据上面的代码稍加修改就好了
while line:
a = line.split(",")
b = a[1:3] # 这是截取按逗号分隔后的第二个和第三个数据
list1.append(b) # 将其添加在列表之中
text = '''
.5,0,14.9397,6.036,2,500,"0.2mm/min"
1,0,16.4322,6.036,0,500,"0.2mm/min"
'''
lis = text.replace('\n' , '&').split('&')
for i in lis:
txt = i.split(',')
if len(txt)>=3:
print(txt[1],end='\t')
print(txt[2])