小编Thu*_*ing的帖子

在python中包装一个numpy数组

我在python中使用numpy数组,我正在尝试更好地将它们可视化以查看我正在使用的内容.当数组换行到下一行时有没有办法改变?例如,在终端窗口中,我有足够的列在一行上显示0-49,但是当我转换为数组数据类型时它会自动换行.

>>> tmp.shape
(2, 50)
>>> print tmp
[[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
  24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
  48 49]
 [50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy

13
推荐指数
1
解决办法
1927
查看次数

用于Windows 7的spyder中的strptime的Python ImportError

我不能为我的生活弄清楚是什么导致了这个非常奇怪的错误.

我在spyder IDE中为Windows 7运行python 2.7中的脚本.它在一个点上使用datetime.datetime.strptime.我可以运行一次代码并且看起来很好(虽然我还没有完成调试,所以异常已经引发并且还没有正常完成),然后如果我再次尝试运行它,我得到以下内容(仅回溯结束)显示):

文件"C:\ path\to\test.py",第220行,在std_imp
self.data [key] .append(dt.datetime.strptime(string_var,string_format_var))
ImportError:导入_strptime失败,因为导入lockis被保留通过另一个线程.

我没有使用Threading等运行多个线程.让代码超越这一点的唯一方法是完全重启计算机.重启spyder将无法正常工作.网络搜索似乎没有产生任何其他人的线索或迹象.

有谁知道发生了什么?这是某种GIL问题吗?什么是导入锁,为什么一旦我尝试运行代码一次,它似乎阻止我导入datetime模块的这个方法?

python datetime strptime importerror spyder

7
推荐指数
1
解决办法
3433
查看次数

Mac OS X 终端的 Python raw_input() 限制?

我写了一个 python 脚本,并一直在使用 python2.6 在 Mac OS X 雪豹的终端中运行它。我使用 raw_input() 在几个地方导入文本,但我似乎达到了一个不再接受更多字符的限制。

这是 python raw_input() 的限制还是与终端或 Mac OSX 有关?

有没有更好的方法让用户在 python 中输入大量文本?

python macos terminal

6
推荐指数
2
解决办法
2559
查看次数

保存到文件并加载 python 类的实例及其属性

我正在使用 python 进行数据分析,并希望找到一种将类实例保存到文件的好方法,以便稍后可以重新加载它并保留其属性值。特别是,此类的实例将加载其他类实例的对象,然后进行需要一段时间才能完成的处理器密集型比较。

例如:

import pickle

class MyClass():
    def __init__(self):
        self.info = OtherClass(option=1)

    def pickle(self):
        f = file('test_file', 'wb')
        pickle.dump(self, f, pickle.HIGHEST_PROTOCOL)
        f.close()

    def unpickle(self):
        f = file('test_file', 'rb')
        pickle.load(f)
        f.close()


class OtherClass():
    def __init__(self, option):
        self.property = option * 2


mydata = MyClass(option=5)

mydata.pickle()
Run Code Online (Sandbox Code Playgroud)

然后导入此模块并运行 mydata.unpickle() 以取回 mydata(我还有一个选项,用于查找文件之前是否已被 pickle,如果有,则暂停 OtherClass 实例的计算和调用)。现在,如果我这样做,我可以加载 mydata,但它不再具有 mydata.info 对象。我的理解是这是pickle有意为之的一部分,但是有没有办法完全保存mydata以便我以后可以使用它?

python attributes class instance pickle

2
推荐指数
1
解决办法
9394
查看次数