Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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 金甲2号罐头';我不理解Raspberry Pi的格式_Python_Sqlite_Numpy_Flask_Raspberry Pi - Fatal编程技术网

Python 金甲2号罐头';我不理解Raspberry Pi的格式

Python 金甲2号罐头';我不理解Raspberry Pi的格式,python,sqlite,numpy,flask,raspberry-pi,Python,Sqlite,Numpy,Flask,Raspberry Pi,我试图在我的内部网络上运行一个基本的报告工具。为了实现这一点,我使用了: 拉斯比奥斯 烧瓶(金杯2) Pandas从缓存值的SQLite数据库中提取(通过Pandas.io) Numpy,用于数据聚合 基本上,我有一个Flask视图,它从SQLite表中提取一些每日总计(日期、访问、视频播放等),然后通过NumPy按日期聚合数据,将其转换为元组,然后将其输出到HTML模板。在HTML模板中,我有一个Jinja过滤器,可以将日期转换为更友好的格式,然后将任何数字转换为逗号分隔的格式,以便于阅读

我试图在我的内部网络上运行一个基本的报告工具。为了实现这一点,我使用了:

  • 拉斯比奥斯
  • 烧瓶(金杯2)
  • Pandas从缓存值的SQLite数据库中提取(通过Pandas.io)
  • Numpy,用于数据聚合
基本上,我有一个Flask视图,它从SQLite表中提取一些每日总计(日期、访问、视频播放等),然后通过NumPy按日期聚合数据,将其转换为元组,然后将其输出到HTML模板。在HTML模板中,我有一个Jinja过滤器,可以将日期转换为更友好的格式,然后将任何数字转换为逗号分隔的格式,以便于阅读

在我的临时搭建环境(我自己的笔记本OSX 10.9.5)上工作得非常好。但是在Raspberry Pi上通过ssh远程运行它或者直接从Pi-Jinja2上运行它突然忘记了如何处理数字。在登台时,Jinja2将numpy.int64类型作为一个数字处理。在Raspberry Pi上,它的行为就像是某种未知的格式

下面是我用来将pandas数组转换为元组的代码:

data_set = [tuple(x) for x in grand_total.to_records(index = False)]
这是我用来处理日期的Jinja模板过滤器。我在其中添加了一个额外的elif来将numpy.int64转换为int,但它仍然不起作用

@app.template_filter('DateFormattr')
def DateFormattr(PossDate):
  if(isinstance(PossDate, numpy.datetime64)):
    PossDate = pandas.to_datetime(PossDate)
    PossDate.date().strftime('%Y-%m-%d')
    PossDate = str(PossDate)[0:10]
    return PossDate
  else:
    return PossDate
下面是构建实际表的代码:

{% for row in the_data %}

<tr>
{% for cell in row %}
 <td> 
  {% if cell is not number  %}
    <b>
    {{ cell | DateFormattr }}
    </b>
  {% else %}
    {% print '{0:,}'.format(cell | int) %}
  {% endif %}
  </td>
{u数据%中的行的%
{第%行中的单元格为%1}
{%如果单元格不是数字%}
{{cell | dateformatr}}
{%else%}
{%print'{0:,}'。格式(单元格| int)%}
{%endif%}
这是怎么回事?覆盆子皮有没有什么怪癖,使烧瓶或金贾2引擎失控

有很多事情正在进行,我可能错过了一些细节,所以请随时要求更多的澄清

编辑以添加相关软件包:

关于RPi:

  • 烧瓶0.10.1
  • 烧瓶WTF 0.11
  • WTForms 2.0.2
  • Jinja2.7.3
  • numpy 1.8.2
  • 熊猫0.14.1
  • SQLAlchemy 1.0.4
在Mac上:

  • 烧瓶0.10.1
  • 烧瓶WTF 0.11
  • WTForms 2.0.2
  • Jinja2.7.3
  • numpy 1.9.2
  • 熊猫0.15.2
  • SQLAlchemy 0.9.9
两者都在运行Python v2.7.9。(总有一天,我会停止担忧,学会爱上Python 3。)


IIRC,由于RPi的限制,我不得不使用apt get安装Pandas,因此存在版本差异。

Pi和Mac上Python和库的版本等?删除DateFormatr自定义筛选器时会发生什么?@NickWoodhams:这会使日期字段(表的第一列)显示一个丑陋的时间戳,但是表格的其余部分保持不变。@nathancahill当然应该包括在内。我将添加到上面。如果你将Mac上的numpy和pandas降级到RPi版本,你能复制这个问题吗?