小编ryp*_*pel的帖子

如何让 Flask-SQLAlchemy 使用应用程序工厂模式

我想使用 Flask-SQLAlchemy 建立一个 sqlite 数据库。我收到一个操作错误(sqlite3.OperationalError) no such table

这是一个用 Flask 编写的 Web 应用程序。我想使用 Flask-SQLAlchemy 扩展与数据库交互。我觉得这可能与应用程序上下文有关,但我不确定。

如您所见,该应用程序有一个“模块”(auth子包)。该模块通过蓝图注册到应用程序。我在子包Researchermodels.py文件中定义了类的模型authapp/__init__.py保存应用程序工厂和数据库初始化。因为我只是想让基本功能正常工作,所以我仅有的两个视图是在app/auth/routes.py.


.
|-- app
|   |-- __init__.py
|   |-- auth
|   |   |-- __init__.py
|   |   |-- __pycache__
|   |   |-- models.py
|   |   `-- routes.py
|   |-- static
|   `-- templates
|-- app.db
|-- config.py
|-- instance
|   `-- config.py
`-- run.py
Run Code Online (Sandbox Code Playgroud)

应用程序/初始化.py

from flask import Flask, render_template …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy

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

Python:'import node.py'引发"没有名为py的模块"-error

我有一个像这样的文件main.py:

import node.py
[my code...]
Run Code Online (Sandbox Code Playgroud)

和node.py这样:

[more of my code]
Run Code Online (Sandbox Code Playgroud)

执行main.py时,我收到此错误:

  File "/home/loldrup/repo/trunk/src/src/main.py", line 2, in <module>
    import node.py
ImportError: No module named py
Run Code Online (Sandbox Code Playgroud)

python python-import

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

Python子进程读取

有这个代码

p = subprocess.Popen('tail -f /var/log/syslog', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

for line in p.stdout.readlines():
    print line,
    time.sleep(1)
Run Code Online (Sandbox Code Playgroud)

即使我向syslog添加内容,脚本也会挂起并且不会写任何行.

为什么?

python subprocess

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

Raw_input到子流程

有没有办法获取raw_input,将其记录到内存中,然后在子进程中调用它?

x = raw_input("what is your fav. Color??")
Subprocess.Popen("C://Windows/system32/cmd.exe")
os.system('echo your favorite color is "x"')
Run Code Online (Sandbox Code Playgroud)

我对此的主要需求是,我可以接受用户的raw_input并将其合并到我的朋友制作的命令行程序中。

python subprocess

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

Python:通用导入

任何人都可以解释哪些'导入'是通用的,所以我不需要写例如:

from numpy import *
import numpy
import numpy as np
from numpy.linalg import *
Run Code Online (Sandbox Code Playgroud)

为什么不import numpyfrom numpy import *从"numpy"中扼杀所有人?

python numpy python-import

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

在 Python 2.7 中导入 urllib 或 urllib 2 失败,并出现 ImportError: Cannot import name iskeyword

我无法在 Python 2.6 或 Python 2.7 安装上导入 urllib 或 urllib2。

Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/urllib.py", line 30, in <module>
    from urlparse import urljoin as basejoin
  File "/usr/lib/python2.7/urlparse.py", line 110, in <module>
    from collections import namedtuple
  File "/usr/lib/python2.7/collections.py", line 10, in <module>
    from keyword import iskeyword as _iskeyword
ImportError: cannot …
Run Code Online (Sandbox Code Playgroud)

python urllib python-import python-2.7

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

argparse - 带有列表/元组的可选参数

我有几个可选参数,其中一个需要存储多个值 - 即它的类型既不是字符串也不是整数。argparse 是否支持其他类型的可选参数?

例如,我想要这个命令:

>>> python example1 test_project --name try1 3
Run Code Online (Sandbox Code Playgroud)

相当于这样的代码:

args.name = {'try1', '3'}
Run Code Online (Sandbox Code Playgroud)

这可能吗?或者,action='store_true'如果他选择此选项,我是否会被迫使用然后提示用户提供更多信息?

python argparse

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

传递一个url作为参数

每当我尝试运行如下脚本时,我都会得到以下结果.代码有什么问题?

1.python test.py

不打印用法.

2.python test.py http://link.com/index.php?title=tesst&action=raw

打印: "'action' is not recognized as an internal or external command, operable program or batch file."

我的剧本:

# Version YYYYMMDD
version = "20121112"

# File type to be output to logs
# Should be changed to exe before building the exe.
fileType = "py"

# Import sys to read command line arguments
import sys, getopt
#import pdb
#pdb.set_trace()

import argparse

def update (url):
    req = urllib2.Request(url=url)
    try:
        f = urllib2.urlopen(req)
        txt …
Run Code Online (Sandbox Code Playgroud)

python command-line-arguments

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

Python3.3:带有textmining-1.0的ImportError

我安装了textmining-1.0.我无法导入它.当我输入

import textmining 
Run Code Online (Sandbox Code Playgroud)

在python3.3 shell中,我收到消息:

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import textmining
  File "C:\Python33\lib\site-packages\textmining\__init__.py", line 2, in <module>
    import stemmer
ImportError: No module named 'stemmer'
Run Code Online (Sandbox Code Playgroud)

但是我可以看到stemmer.py存在于textmining-1.0文件夹中.这里出了什么问题?

python python-import

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

Python 2.7随机代码

在python 2.7中,我试图创建一个程序,它将生成一个介于100000和999999999之间的随机数,然后将其发送给用户的电子邮件.到目前为止,它创建了一个随机数,然后将其发送给用户电子邮件,但是当用户键入其代码时,它始终打印不正确.我怎样才能解决这个问题?

    code = random.randrange(100000, 99999999)

    entry = getpass.getpass('Code: ')
    if entry == code:   
        print 'Welcome!'
    else:
        print 'Incorrect!'
Run Code Online (Sandbox Code Playgroud)

python random python-2.7

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