小编Sam*_*aiT的帖子

ImportError:动态模块没有定义init函数(initfizzbuzz)

我试图编译fizzbuzz.c从python导入.对于建筑fizzbuzz.c,我用过python setup.py build_ext -i.

在构建之后,我尝试导入fizzbuzz.c但发生了以下错误.我怎么解决这个问题 ?

错误

>>> import fizzbuzz
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: dynamic module does not define init function (initfizzbuzz)
Run Code Online (Sandbox Code Playgroud)

fizzbuzz.c

#include <stdio.h>

void fizzbuzz(int n){

    for (int i=1; i <= n; i++){
        if (i % 3 == 0 && i % 5 ==0){
            printf("fizzbuzz %d \n", i);
        }
        else if (i % 3 == 0){
            printf("fizz %d \n", i);
        }
        else …
Run Code Online (Sandbox Code Playgroud)

c python python-c-extension

36
推荐指数
5
解决办法
6万
查看次数

使用Flask上传文件夹/文件

我可以通过这个例子上传一个带烧瓶的文件:

上传文件

但我不知道如何上传文件夹或一些文件.我搜索过,我发现了这个: 用Flask上传多个文件.最后,我得到了如何上传多文件上传.我会告诉你下面的代码:(这是一个好习惯吗?我不知道)

.
??? manage.py
??? templates
?   ??? file_upload.html
?   ??? hello.html
??? uploads
    ??? BX6dKK7CUAAakzh.jpg
    ??? sample.txt
Run Code Online (Sandbox Code Playgroud)

但是,我仍然不知道如何上传属于该文件夹的文件夹和文件.你能告诉我怎么样?

我正在处理的目录树:

from flask import Flask,abort,render_template,request,redirect,url_for
from werkzeug import secure_filename
import os
app = Flask(__name__)
UPLOAD_FOLDER = './uploads'
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER 
@app.route('/')
def index():
    return redirect(url_for('hello'))

@app.route('/hello/')
@app.route('/hello/<name>')
def hello(name = None):
    return render_template('hello.html',name=name)

@app.route('/upload/',methods = ['GET','POST'])
def upload_file():
    if request.method =='POST':
        file = request.files['file']
        if file:
            filename = secure_filename(file.filename)
            file.save(os.path.join(app.config['UPLOAD_FOLDER'],filename))
            return hello()
    return render_template('file_upload.html')


if __name__ == …
Run Code Online (Sandbox Code Playgroud)

python file-upload flask

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

[1]+ 停止 vim foo.py 错误,如何解决这个问题?

每当我从 vim 命令运行 python 程序时,如下所示:

:!python foo.py
Run Code Online (Sandbox Code Playgroud)

运行程序后,vim 会停下来并说:

[1]+  Stopped                 vim foo.py
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会出现这样的错误。我没有在其他应用程序中使用 foo.py 文件,但它就发生了。

如果您需要,这是我的 .exerc 文件内容:

set nu
syntax on
filetype on
filetype indent on
filetype plugin on
set tabstop=4
set shiftwidth=4
set softtabstop=4
set shellcmdflag=-ic
Run Code Online (Sandbox Code Playgroud)

当我运行 foo.py 后打开它时,vim 会说:

E325:注意
找到一个名为“.foo.py.swp”的交换文件
          所有者:我 日期:2013 年 9 月 30 日星期一 21:05:52
         文件名:~foo/bar/foo.py
          修改:无
         用户名:me 主机名:主机名
        进程ID:3635(仍在运行)
打开文件“foo.py”时
             日期: 2013 年 9 月 28 日星期六 23:04:15

(1) 另一个程序可能正在编辑同一个文件。
    如果是这种情况,请小心不要最终出现两个问题
    进行更改时同一文件的不同实例。
    退出,或谨慎继续。

(2) 该文件的编辑会话崩溃。
    如果是这种情况,请使用“:recover”或“vim -r foo.py”
    恢复更改(请参阅“:帮助恢复”)。
    如果您已经这样做了,请删除交换文件“.foo.py.swp”
    以避免出现此消息。 …

python vim

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

SQLite3串行类型没有增加

我使用SQLite3创建了一个数据库.我的python版本是2.7.5.

在创建数据库之前,我只是创建了示例数据库,并测试它是否运行良好.并且id即使我宣布它是一种serial类型,它也没有增加.

我创建了简单的数据库

import sqlite3
con = sqlite3.connect('sample.db')
cur = con.cursor()
cur.execute("""CREATE TABLE sample(id serial,test real)""")
cur.execute("""INSERT INTO sample(test) VALUES(?)""",(3,))
cur.execute("""INSERT INTO sample(test) VALUES(?)""",(6,))
cur.execute("""INSERT INTO sample(test) VALUES(?)""",(8,))
con.commit()
Run Code Online (Sandbox Code Playgroud)

然后我获取了所有数据:

data = cur.execute("""SELECT * from sample""")
t = data.fetchall()

In [33]: t
Out[33]: [(None, 3.0), (None, 6.0), (None, 8.0)]
Run Code Online (Sandbox Code Playgroud)

我期待这个:Out[33]: [(1, 3.0), (2, 6.0), (3, 8.0)] 但是,正如你所看到的,所有id元素都是None

我怎么解决这个问题 ?我知道只需增加一个变量并插入它即可.像这样:

id += 1
cur.execute("""CREATE TABLE sample(id serial,test real)""")
id += 1
cur.execute("""INSERT INTO …
Run Code Online (Sandbox Code Playgroud)

python sqlite

5
推荐指数
2
解决办法
2794
查看次数

用Django和html5标签播放视频

我正在尝试使用带有html5视频标签的django来播放视频,但却无法播放.
主要问题是服务器无法获取video文件.
我收到了这个错误:

[06/Jan/2014 23:52:07] "GET absolute_path_of_media/sample.mp4 HTTP/1.1" 404 2422
Run Code Online (Sandbox Code Playgroud)

并在检查要素:

得到错误

在这里,我将向您展示我的代码.
模板/ videoplay.html:

{% extends "app/base.html" %}
{% block contents %}
<video name='demo' controls autoplay width='50%' height='40%'>
<source src="{{media}}/sample.mp4" type="video/mp4"></source>
</video>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

views.py:

def index(request):
    return render(request, "app/videoplay.html", {'media': MEDIA_ROOT}) 
Run Code Online (Sandbox Code Playgroud)

MEDIA_ROOT从settings.py 导入,它是媒体目录的绝对路径.

发展环境:

browser: chrome 
django:1.6.1
python:2.7
Run Code Online (Sandbox Code Playgroud)

静态和媒体目录的关系:

mysite/
      static/
            sample.mp4
      media/
            sample.mp4
      templates/
            ....
      views.py
      ....
Run Code Online (Sandbox Code Playgroud)

django video html5 html5-video

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

标签 统计

python ×4

c ×1

django ×1

file-upload ×1

flask ×1

html5 ×1

html5-video ×1

python-c-extension ×1

sqlite ×1

video ×1

vim ×1