Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python read()命令能否由两个输入变量构成?_Python - Fatal编程技术网

Python read()命令能否由两个输入变量构成?

Python read()命令能否由两个输入变量构成?,python,Python,我已经得到了一些python代码(至少有人告诉我它是用python编写的,它与matlab代码结构不匹配)来运行,其中一行是 data = f.read(1024x1024, 'int32') 我得到了一个语法错误,这并不奇怪,因为我认为read()只能接受一个输入,那就是大小 我检查了文件 并对周围进行了全面检查,例如: 在这里: 没有迹象表明read()可以接受两个输入,而不是一个带有“x”的输入。 (我也不清楚1024x1024的意图是什么,这就是为什么我质疑它是否是python,看起来

我已经得到了一些python代码(至少有人告诉我它是用python编写的,它与matlab代码结构不匹配)来运行,其中一行是

data = f.read(1024x1024, 'int32')
我得到了一个语法错误,这并不奇怪,因为我认为read()只能接受一个输入,那就是大小

我检查了文件 并对周围进行了全面检查,例如: 在这里:

没有迹象表明read()可以接受两个输入,而不是一个带有“x”的输入。 (我也不清楚1024x1024的意图是什么,这就是为什么我质疑它是否是python,看起来他们正在尝试设置大小,但对于read方法却不是这样)

有人知道我错过了什么吗?(或者你能理解这个命令最初的意思吗?)

整个脚本部分:

f = open(filename, 'r')
out = open(outfile, 'w')
data = f.read(1024x1024, 'int32')
result = out.write(data[0:256000])
out.closed
f.closed

它基本上是关于他们希望在脚本的特定部分中发生什么的注释,但他们编写它时就好像它是代码一样,我不知道数据行的意图是什么。

您的语法错误与读取“命令”无关。语法错误意味着解释器/解析器根本无法理解您正在编写的内容。在python中发生这种情况时,通常会指向让解释器感到困惑的地方,fx:

    data = f.read(1024x1024, 'int32')
                          ^
SyntaxError: invalid syntax
请注意,
^
指向故障所在的
1024x1024
,它根本不理解
1024x1024
是什么(因此它不会真正尝试调用
read
方法)。如果你想把数字相乘,你应该写
1024*1024

当您更改为
1024*1024
时,将出现其他错误(因为没有阅读
read
的文档-它不接受这些参数)


至于语言,我怀疑没有一种理智的语言有这样的结构。这里的问题是,
x
不能作为乘法运算符很好地工作,因为这在
axe
之类的事情上会有问题(他是指
a*e
还是名为
axe
的变量?)。它看起来更像是伪代码。

它看起来更像伪代码;指定
“int32”
使我认为他们是在读取二进制文件。你可能需要像这样的东西

import numpy as np

def load_array(filename, dtype="int32", shape=(1024,1024)):
    return np.fromfile(filename, dtype).reshape(shape)

欢迎来到stackoverflow。你的问题可能被否决了,因为它显示了一个错误。Python文件对象的读取方法有很好的文档记录。@Adrian:您确定删除该标记是正确的吗?OP说,至少有人告诉我它是用python编写的,它与matlab代码结构不匹配。我知道它有很好的文档记录,我经常使用它,我从来没有见过它与多个输入一起使用,或者任何表明可以使用多个输入的东西,但是我需要理解这一点来编写代码,所以我想知道以前是否有人见过这样使用它,或者是否有一个模块出于某种原因重写了read命令?因为我没有完整的剧本,所以我看不出我不是在浪费你的时间,我很抱歉你这样认为,我只是用尽了我自己的专业知识,希望有人以前看到过这一点,并且能够澄清。Sorry@KevinGuan
f.read
不是有效的MATLAB语法,除非还有一个MATLAB类与他给出的代码一起使用。我猜第一个参数是大小,第二个是数据类型。这与本机文件对象和
os.file
语法都不匹配,我敢打赌它不是Python,但我不能从一行中分辨出来。但是…
TypeError:read()最多使用1个参数(给定2个)
。也许这毕竟不是Python。