求大神解决一个问题,这行代码什么意思?

  • 君子
  • 792 次点击

我直接给贴吧的地址,这个社区不知道编辑内容。。。

http://tieba.baidu.com/p/5156975832

  • 11 条回复 | 2 人参与
  • 君子 # 1

    -- coding:utf-8 --

    from numpy import *

    数据文件转矩阵

    path: 数据文件路径

    delimiter: 行内字段分隔符

    def file2matrix(path, delimiter): fp = open(path, "rb") # 读取文件内容 content = fp.read() fp.close() rowlist = content.splitlines() # 按行转换为一维表 # 逐行遍历,结果按分隔符分隔为行向量 recordlist = [map(eval, row.split(delimiter)) for row in rowlist if row.strip()] # 返回转换后的矩阵形式 return mat(recordlist)

  • 君子 # 2

    这排版,我也是醉了。。。

  • @君子 编辑器只支持 Markdown 排版,请使用 Markdown 语法编辑文本。使用 Markdown 提供优雅排版

  • 你使用了 from numpy import *,所以不太清楚 eval 是 numpy 的函数还是 python 的函数。因为 python 内置有一个 eval 函数,它会对有效表达式求值,例如:

    >>>eval("3+4")
    7
    

    所以这代码的意思对每一行的结果进行表达式求值。

  • 君子 # 5

    @追梦人物 好的,我去看看那个numpy里面eval的意思,谢谢啦

  • @君子 也许 numpy 没有 eval 函数,不推荐使用 from numpy import *,最好要用哪个函数导入哪个函数。

  • 君子 # 7

    @追梦人物 我真找不着numpy里面的eval。。。我只是看书上的源码,我也不知道它具体是什么玩意。。它注释就那样写,根本没解释那玩意怎么实现

  • 那应该就是 python 内置的 eval ,对结果表达式求值@君子

  • 君子 # 9

    @追梦人物 这里并没有什么可以计算的,我觉得我搞清一个事实,它这个代码的意图是读取文本的行和列,而这个代码匪夷所思,所以,按照我的想法改一下就没事了

  • 君子 # 10

    @君子 为什么贴吧的图片会被和谐掉了。。。

  • @君子 嗯,贴吧图放外链,会被和谐。

    也许他的代码有错,你理解了意图按照自己的想法修改后达到效果就好。

添加一条新回复
登录 或者 注册 后发表回复