Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.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%mprun抛出类型错误_Python_Memory Profiling - Fatal编程技术网

Python%mprun抛出类型错误

Python%mprun抛出类型错误,python,memory-profiling,Python,Memory Profiling,我上班有点困难。每当我从IPython中运行%mprun时,我都会收到错误消息 TypeError: unicode argument expected, got 'str' 我用的是我能想象到的最简单的例子 In [1]: %load_ext memory_profiler In [2]: from mpruntest import func In [3]: A = rnd.randn(1000, 1000) In [4]: %mprun -f func func(A) 给出: /User

我上班有点困难。每当我从IPython中运行%mprun时,我都会收到错误消息

TypeError: unicode argument expected, got 'str'
我用的是我能想象到的最简单的例子

In [1]: %load_ext memory_profiler
In [2]: from mpruntest import func
In [3]: A = rnd.randn(1000, 1000)
In [4]: %mprun -f func func(A)
给出:

/Users/markvdw/anaconda/lib/python2.7/site-packages/memory_profiler.pyc in show_results(prof, stream, precision)
    600                                  'Line Contents')
    601 
--> 602         stream.write('Filename: ' + filename + '\n\n')
    603         stream.write(header + '\n')
    604         stream.write('=' * len(header) + '\n')

TypeError: unicode argument expected, got 'str'
mpruntest
包含:

import numpy as np

def func(x):
    y = x**2.0
    z = np.exp(y)
    return z

这是一个与Python 2相关的bug。我刚刚发布了新版本的memory_profiler(0.41),应该可以解决这个问题。现在的输出是您所期望的:

Line #    Mem usage    Increment   Line Contents
================================================
    11     42.5 MiB      0.0 MiB   def func(x):
    12     50.2 MiB      7.6 MiB       y = x**2.0
    13     57.8 MiB      7.6 MiB       z = np.exp(y)
    14     57.8 MiB      0.0 MiB       return z

如果您尝试
stream.write('Filename:'+unicode(Filename)+'\n\n')
?该错误是从
内存分析器中抛出的
代码,我主要想知道我是否做错了什么,或者我是否应该提交错误报告。抱歉,我将
流的输出错误为您自己的脚本的一部分,所以我的建议是无效的。我个人认为
mpruntest
没有任何问题。可能是个虫子