找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2810|回复: 7

[求助] python怎么读取文件。(依然未解决)

1

主题

4

帖子

4

积分

贫民

积分
4
cocoinsky 发表于 2017-12-6 17:28:13 | 显示全部楼层 |阅读模式
本帖最后由 cocoinsky 于 2017-12-13 17:51 编辑

Python怎么读取文件,文件内容是不等行的数据,并作图,如下:

1   2   3   4   5   6
2   4   6   8   10   11
3   5             11   12
4   8             14   16

x1=第一列,y1=第二列;
x2=第三列,y2=第4列;
x3=第5列,y3=第6列。
plot(x1,y1,x2,y2,x3,y3)
回复

使用道具 举报

1

主题

2

帖子

2

积分

贫民

积分
2
bymax 发表于 2017-12-6 22:48:15 | 显示全部楼层
file = open("file.txt")

while 1:
    line = file.readline()
    if not line:
        break
    print(line)
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
cocoinsky  楼主| 发表于 2017-12-7 21:07:37 | 显示全部楼层
bymax 发表于 2017-12-6 22:48
file = open("file.txt")

while 1:

首先谢谢您的回复。

还有个问题就是,读取出来的数据怎么指定列画图呢?

plot(第一列,第二列)
回复 支持 反对

使用道具 举报

2

主题

6

帖子

6

积分

贫民

积分
6
哈沃克夫斯基 发表于 2017-12-8 13:55:00 | 显示全部楼层
网上扒来的~
读第一列:
a=[float(l.split()[0])for l in open('file.txt')]
b=[float(l.split()[1])for l in open('file.txt')]
剩下的以此类推
plot那个要用matplotlib模块
import matplotlib.pyplot as plt
plt.plot(a,b)
plt.show()

应该就行了
回复 支持 反对

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2017-12-8 21:30:09 | 显示全部楼层
哈沃克夫斯基 发表于 2017-12-8 13:55
网上扒来的~
读第一列:
a=)for l in open('file.txt')]

好像不行,分隔数据的whitespace和空值无法区分,3,4列的数据出错了.
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
cocoinsky  楼主| 发表于 2017-12-9 08:48:59 | 显示全部楼层
sheeboard 发表于 2017-12-8 21:30
好像不行,分隔数据的whitespace和空值无法区分,3,4列的数据出错了.

是的,我也是一直碰到这个空值的问题,老出错。
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
cocoinsky  楼主| 发表于 2017-12-9 09:00:37 | 显示全部楼层
哈沃克夫斯基 发表于 2017-12-8 13:55
网上扒来的~
读第一列:
a=)for l in open('file.txt')]

您好,感谢回复,我试了试你提供的方法,前两列都没问题,重要的是第三列那里就出错了。

  File "<ipython-input-11-da74a6e3af12>", line 9
    c=[float(1.split()[2])for 1 in open("1.dat")]
                   ^
SyntaxError: invalid syntax
回复 支持 反对

使用道具 举报

2

主题

6

帖子

6

积分

贫民

积分
6
哈沃克夫斯基 发表于 2017-12-10 15:37:51 | 显示全部楼层
俺也是新手,实在搞不定了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表