Python读取TXT文件问题

我在写程序的过程中,需要将一个TXT文件的某一行读出来,并保存为数据类型为整数的列表。

1 先使用readline将该行文件读出来,得到的是一个字符串
2 再使用字符串的函split函数,用空格将字符串分割成一个字符串列表
3 使用字符串切片去掉第一个空字符串和最后一个\n(换行)字符串
4 使用map函数可以实现对列表的每一个元素进行同样的操作。即map(f, list),f是对每个元素进行操作的函数
5 在Python2中,map返回的任然是一个列表,但是在Python3中map返回的却是一个地址,需要使用list(map(f, list))才能返回一个列表
6 由于我的切得的字符串是9.0000000e+00这种形式,无法直接转换为int,所以得先转换为float

def myInt(string):
    return int(float(string))
train_fp = open('fold3026-matrices_Learn.txt')
    train_index = train_fp.readline()
    train_fp.close()
    train_index = train_index[1:-1]
    train_index = train_index.split('   ')
    train_index = list(map(myInt, train_index))

你可能感兴趣的:(平时遇到的问题解决方案)