小编And*_*den的帖子

猜猜0x564c是什么?

当我读取linux内核源码时,我发现一行说:

#define NCP_SUPER_MAGIC 0x564c/*猜猜看,0x564c是什么:-)*/

(564c)16 =(22092)10 =(53114)8 =(101011001001100)2

Wolfram | Alpha告诉我们22092 = 2 ^ 2*3*7*263 = 43*2 ^ 9 + 76

好的,所有的身体都有这个谜语的想法吗?

顺便说一下,这段代码出现在%linux-kernel-source%/ include/linux/magic.h的文件中

magic-numbers linux-kernel

26
推荐指数
1
解决办法
838
查看次数

如何使用Index将Pandas数据帧写入sqlite

我有一个从大熊猫DataFrame中提取的股票市场数据列表(见下面的格式).该日期用作DataFrame中的索引.我想将数据(包括索引)写入SQLite数据库.

             AAPL     GE
Date
2009-01-02  89.95  14.76
2009-01-05  93.75  14.38
2009-01-06  92.20  14.58
2009-01-07  90.21  13.93
2009-01-08  91.88  13.95
Run Code Online (Sandbox Code Playgroud)

基于我对Pandas的write_frame代码的阅读,它目前不支持编写索引.我尝试使用to_records,但遇到了Numpy 1.6.2和datetimes问题.现在我正在尝试使用.itertuples编写元组,但SQLite抛出了一个错误,表明数据类型不受支持(参见下面的代码和结果).我对Python,Pandas和Numpy比较陌生,所以我完全有可能错过一些明显的东西.我想我在尝试为SQLite写一个日期时遇到了问题,但我想我可能会过于复杂.

我想我可以通过升级到Numpy 1.7或Pandas的开发版来修复这个问题,Pandas在GitHub上发布了一个修复程序.我更愿意使用软件的发布版本开发 - 我是新手,我不希望稳定性问题进一步混淆.

有没有办法使用Python 2.7.2,Pandas 0.10.0和Numpy 1.6.2来实现这一目标?也许以某种方式清理日期时间?我有点过头了,任何帮助都会受到赞赏.

码:

import numpy as np
import pandas as pd
from pandas import DataFrame, Series
import sqlite3 as db

# download data from yahoo
all_data = {}

for ticker in ['AAPL', 'GE']:
    all_data[ticker] = pd.io.data.get_data_yahoo(ticker, '1/1/2009','12/31/2012')

# create a data frame
price = DataFrame({tic: …
Run Code Online (Sandbox Code Playgroud)

python sqlite pandas

26
推荐指数
4
解决办法
4万
查看次数

mvc如何在不重定向到LogIn视图的情况下返回未授权的代码

我的MVC Web应用程序为两种类型的用户提供服务.

  • 第一个通过标准Web浏览器;
  • 第二个通过REST返回仅返回JSON数据.

另外,

  • 两者都需要认证和授权;
  • 两种方案都根据路线进行区分,以便了解要提供的内容.

当用户访问应用程序时,如果他们未登录,则应用程序应以不同的方式做出反应.

  1. 在第一种情况下,它应该返回默认的LogIn页面(这很好).
  2. 在第二种情况下,它应该仅返回401 Unauthorized代码.

我习惯使用WCF REST服务,我可以在这里引发这样的异常:

throw new WebProtocolException(System.Net.HttpStatusCode.Unauthorized, exc.Message, exc);
Run Code Online (Sandbox Code Playgroud)

并收到401消息.我把statusCode这样的问题用在MVC中的相同方法的问题:

HttpContext.Response.StatusCode = (Int32)HttpStatusCode.Unauthorized
Run Code Online (Sandbox Code Playgroud)

它总是重定向到LogIn页面.

我怎样才能做到这一点?

我已经尝试重写AuthorizeAttribute并处理该OnAuthorization函数,但是一旦我将其设置statusCode为401,它就会被重定向到LogIn页面.

rest json asp.net-mvc-2

25
推荐指数
2
解决办法
9230
查看次数

返回pandas DataFrame列的最大值为零或值

我想用0替换pandas DataFrame列中的负值.

有没有更简洁的方法来构造这个表达式?

df['value'][df['value'] < 0] = 0
Run Code Online (Sandbox Code Playgroud)

python pandas

24
推荐指数
3
解决办法
1万
查看次数

TimeGrouper,熊猫

我使用TimeGrouperpandas.tseries.resample每月返回到6M的总和如下:

6m_return = monthly_return.groupby(TimeGrouper(freq='6M')).aggregate(numpy.sum)
Run Code Online (Sandbox Code Playgroud)

在哪里monthly_return:

2008-07-01    0.003626
2008-08-01    0.001373
2008-09-01    0.040192
2008-10-01    0.027794
2008-11-01    0.012590
2008-12-01    0.026394
2009-01-01    0.008564
2009-02-01    0.007714
2009-03-01   -0.019727
2009-04-01    0.008888
2009-05-01    0.039801
2009-06-01    0.010042
2009-07-01    0.020971
2009-08-01    0.011926
2009-09-01    0.024998
2009-10-01    0.005213
2009-11-01    0.016804
2009-12-01    0.020724
2010-01-01    0.006322
2010-02-01    0.008971
2010-03-01    0.003911
2010-04-01    0.013928
2010-05-01    0.004640
2010-06-01    0.000744
2010-07-01    0.004697
2010-08-01    0.002553
2010-09-01    0.002770
2010-10-01    0.002834
2010-11-01    0.002157
2010-12-01    0.001034
Run Code Online (Sandbox Code Playgroud)

6m_return就像:

2008-07-31    0.003626
2009-01-31    0.116907
2009-07-31    0.067688
2010-01-31    0.085986 …
Run Code Online (Sandbox Code Playgroud)

group-by dataframe pandas

23
推荐指数
2
解决办法
3万
查看次数

导入pandas显示ImportError:无法导入名称哈希表

我在python 3.3上安装了pandas,编码如下:

import csv
import pandas
from pandas import DataFrame

csvdata = pandas.read_csv('datafile.csv')
df = DataFrame(csvdata)
Run Code Online (Sandbox Code Playgroud)

它附带以下错误消息:

cannot import name hashtable
Traceback (most recent call last):
  File "C:\Users\document\test4.py", line 5, in <module>
    import pandas
  File "C:\Python33\lib\site-packages\pandas\__init__.py", line 6, in <module>
    from . import hashtable, tslib, lib
ImportError: cannot import name hashtable
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我弄清楚如何解决这个错误?Python和pandas已成功安装.

python-3.x pandas

22
推荐指数
1
解决办法
5万
查看次数

谜语:方形拼图

最近几天,我已经从主人的研究中勉强自己,并一直专注于这个(看似简单的)难题:


这个10*10网格构成了100个可用场所的正方形.目标是从一个角落开始并遍历所有地方,相对于一些简单的"遍历规则"并达到数字100(如果你是一个程序员,则从99开始,而不是从0开始:)

遍历的规则是:
1.沿着垂直和水平轴跳两个空格
2.沿对角线一个空格跳
3.您只能访问每个方块一次

为了更好地可视化,这是一个有效的示例遍历(直到第8步):
示例Traverse http://img525.imageshack.us/img525/280/squarepuzzle.png


从手动的角度来说,我一直在努力解决这个难题.多年来,我一直试图手工解决它,但我从来没有超过96.听起来容易吗?试试自己,亲眼看看:)

因此,为了解决这个问题,我在Python中开发了一个简短的(大约100行代码)程序.我是这种语言的初学者,我想看看我能做些什么.
该程序只是应用详尽的尝试和错误解决技术.换句话说:蛮力深度首先搜索.

我的问题来自于此:遗憾的是,该程序无法解决问题,因为状态空间太大,以至于搜索永远不会找到解决方案.它可以毫不费力地达到98号(并打印出来),但仍然不是一个完整的解决方案.
该程序还打印出它到目前为止所涵盖的搜索树的长度.在几分钟内,例如,第65个元素的遍历列表将被覆盖到最后,只有一条路径.该数字以指数增加的时间段减少.我已经运行了很长一段时间的代码,并且无法超越50个障碍,现在我确信.

似乎这种简单的方法是不够的,除非我永远运行它.那么,如何才能更快,更高效地改进代码,以便提供解决方案呢?

基本上,我期待看到有关如何:

  1. 捕获并利用特定于此问题的领域知识
  2. 应用编程技巧/技巧来克服疲惫

    ..最终实现了一个实质性的解决方案.

提前致谢.


修订
感谢Dave Webb将问题与域名相关联:

这非常类似于Knight's Tour问题,该问题涉及将骑士绕棋盘移动而不重新访问同一个方块.基本上它是相同的问题,但具有不同的"导线规则".


python puzzle

21
推荐指数
4
解决办法
5029
查看次数

Django项目在Linux上的推荐位置

我将我的第一个Django项目上传到Linux服务器,我应该将我的项目放在文件系统中?

使用PHP或ASP项目,一切都进入/var/www,可以这样做并将我的Django项目添加到该/var/www文件夹吗?

python django django-settings

20
推荐指数
2
解决办法
6701
查看次数

熊猫HDFStore - 如何重新开放?

我用以下方法创建了一个文件:

store = pd.HDFStore('/home/.../data.h5')
Run Code Online (Sandbox Code Playgroud)

并使用以下方法存储一些表

store['firstSet'] = df1
store.close()
Run Code Online (Sandbox Code Playgroud)

我关闭了python并在一个清新的环境中重新打开.

如何重新打开此文件?

我去的时候:

store = pd.HDFStore('/home/.../data.h5')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误.

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/misc/apps/linux/python-2.6.1/lib/python2.6/site-packages/pandas-0.10.0-py2.6-linux-x86_64.egg/pandas/io/pytables.py", line 207, in __init__
    self.open(mode=mode, warn=False)
  File "/misc/apps/linux/python-2.6.1/lib/python2.6/site-packages/pandas-0.10.0-py2.6-linux-x86_64.egg/pandas/io/pytables.py", line 302, in open
    self.handle = _tables().openFile(self.path, self.mode)
  File "/apps/linux/python-2.6.1/lib/python2.6/site-packages/tables/file.py", line 230, in openFile
    return File(filename, mode, title, rootUEP, filters, **kwargs)
  File "/apps/linux/python-2.6.1/lib/python2.6/site-packages/tables/file.py", line 495, in __init__
    self._g_new(filename, mode, **params)
  File "hdf5Extension.pyx", line 317, in tables.hdf5Extension.File._g_new (tables/hdf5Extension.c:3039)
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

在Python中"取消捕获"异常

我应该如何"重新抛出"异常,也就是说,假设:

  • 我在我的代码中尝试了一些东西,不幸的是它失败了.
  • 我尝试了一些"聪明"的解决方法,这次碰巧也失败了

如果我从(失败的)解决方法中抛出异常,那对用户来说会非常混乱,所以我认为最好重新抛出原始异常(?),并附带描述性回溯(关于实际的)问题)...

注意:这方面的激励示例是在调用时np.log(np.array(['1'], dtype=object)),它尝试一个诙谐的解决方法并给出一个AttributeError(它"真的"一个TypeError).

我能想到的一种方法就是重新调用有问题的函数,但这似乎是伪造的(理论上,原始函数可能会在第二次调用时发挥一些不同的行为):
好的,这是一个可怕的例子,但是...

def f():
    raise Exception("sparrow")

def g():
    raise Exception("coconut")

def a():
    f()
Run Code Online (Sandbox Code Playgroud)

假设我这样做了:

try:
    a()
except:
    # attempt witty workaround
    g()
---------------------------------------------------------------------------
Exception                                 Traceback (most recent call last)
<ipython-input-4-c76b7509b315> in <module>()
      3 except:
      4     # attempt witty workaround
----> 5     g()
      6

<ipython-input-2-e641f2f9a7dc> in g()
      4
      5 def g():
----> 6     raise Exception("coconut")
      7
      8

Exception: coconut
Run Code Online (Sandbox Code Playgroud)

嗯,问题根本不在于椰子,而是麻雀: …

python exception-handling exception

19
推荐指数
3
解决办法
3497
查看次数