小编Phi*_*lip的帖子

将列添加到SQLAlchemy表

我使用SQLAlchemy创建了一个表,忘了添加列.我基本上想要这样做:

users.addColumn('user_id', ForeignKey('users.user_id'))
Run Code Online (Sandbox Code Playgroud)

这是什么语法?我在文档中找不到它.

python terminal sqlalchemy

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

如何在Numpy中就地扩展数组?

目前,我有一些像这样的代码

import numpy as np
ret = np.array([])
for i in range(100000):
  tmp =  get_input(i)
  ret = np.append(ret, np.zeros(len(tmp)))
  ret = np.append(ret, np.ones(fixed_length))
Run Code Online (Sandbox Code Playgroud)

我认为这个代码效率不高,因为np.append需要返回数组副本而不是修改ret就地

我想知道我是否可以使用extend像这样的numpy数组:

import numpy as np
from somewhere import np_extend
ret = np.array([])
for i in range(100000):
  tmp =  get_input(i)
  np_extend(ret, np.zeros(len(tmp)))
  np_extend(ret, np.ones(fixed_length))
Run Code Online (Sandbox Code Playgroud)

这样extend会更有效率.有没有人有这个想法?谢谢!

python arrays numpy scipy

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

机械化和Javascript

我想使用Mechanize来模拟使用活动JavaScript浏览网页,包括DOM Events和AJAX,到目前为止我还没有办法做到这一点.

我查看了一些支持Spynner和Zope等JavaScript的Python客户端浏览器,但它们都不适用于我.Spynner一直崩溃PyQt,Zope似乎不支持JavaScript.

有没有办法模拟仅使用Python进行浏览(没有额外的进程),如WATIR或操作Firefox或Internet Explorer的库,同时完全支持Javascript,就像实际浏览页面一样?

javascript python browser mechanize

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

如何告诉jQuery在找到第一个元素时停止搜索DOM?

根据我的理解,添加.first():first查询不会在第一次匹配后停止DOM搜索.它只是告诉jQuery从匹配的集合中取出第一个元素.

如果这是真的,那么有没有办法在第一场比赛后停止DOM搜索?例如,如果我知道此查询的结果将始终是单个元素,那么如何告诉jQuery不要浪费时间进一步搜索?

jquery

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

Python请求获取('连接中止.',BadStatusLine("''",))错误

def download_torrent(url):
    fname = os.getcwd() + '/' + url.split('title=')[-1] + '.torrent'
    try:
        schema = ('http:')
        r = requests.get(schema + url, stream=True)
        with open(fname, 'wb') as f:
            for chunk in r.iter_content(chunk_size=1024):
                if chunk:
                    f.write(chunk)
                    f.flush()
    except requests.exceptions.RequestException as e:
        print('\n' + OutColors.LR + str(e))
        sys.exit(1)

    return fname
Run Code Online (Sandbox Code Playgroud)

在那段代码中,当我运行完整的脚本时,我收到一个错误.当我去实际下载洪流时,我得到:

('Connection aborted.', BadStatusLine("''",))
Run Code Online (Sandbox Code Playgroud)

我只发布了我认为与上述相关的代码块.整个脚本如下.这是来自pantuts,但我认为它不再维持,我试图让它运行python3.根据我的研究,错误可能意味着我使用的是http而不是https,但我已经尝试了两种方法.

原始剧本

python python-3.x python-requests

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

在javascript中在while循环内创建一个暂停

我想在while循环中创建一个暂停,这样我就可以创建n每个都在3秒后出现的动画.

我尝试了以下,但它不起作用.很想有人告诉我我做错了什么.谢谢!!

i=0;
while (i < n) {
    someanimation();
    setTimeout(function(){
        i++;
    }, 3000);

};
Run Code Online (Sandbox Code Playgroud)

javascript-events while-loop

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

什么是pyximport,我应该如何使用它?

我正在使用cython为数学模型生成更快的代码.我很难编译代码,但不知怎的,我设法使用.bat:

setlocal EnableDelayedExpansion

CALL "C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin\SetEnv.cmd" /x64 /release
set DISTUTILS_USE_SDK=1

C:\Python27\python.exe C:\gcsilve\trunk\myproject\myproject\cythonsetup.py build_ext --inplace

PAUSE
Run Code Online (Sandbox Code Playgroud)

它运行正常......

我的问题是关于pyximport.我有使用pyximport.install()的其他人编写的旧代码.我无法弄清楚它的作用以及为什么我应该使用它,因为我已经自己编译了代码.那么,有人可以用一个非常简单的(对于傻瓜)的方式向我解释pyximport的作用吗?

附加信息:我有一个project1,使用cython.我有一个project2,它引用了project1.

python pydev cython python-2.7

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

Python on Electron框架

我正在尝试使用Web技术(HTML5,CSS和JS)编写跨平台桌面应用程序.我看了一些框架并决定使用Electron框架.

我已经用Python完成了应用程序,所以我想知道是否有可能在Electron框架上使用Python编写跨平台桌面应用程序?

谢谢

python frameworks cross-platform desktop-application electron

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

csv文件中的行计数

我可能犯了一个愚蠢的错误,但我找不到它的位置.我想计算我的csv文件中的行数.我写了这个,显然不起作用:我row_count = 0应该是400.干杯.

f = open(adresse,"r")
reader = csv.reader(f,delimiter = ",")
data = [l for l in reader]
row_count = sum(1 for row in reader)

print row_count
Run Code Online (Sandbox Code Playgroud)

python csv row count

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

如何在python中加速多个内部产品

我有一些简单的代码,可以执行以下操作.

F使用+ -1条目迭代所有可能的长度n列表.对于每一个,它使用+ -1条目迭代所有可能的长度2n列表S,其中$ S $的前半部分只是下半部分的副本.代码计算F每个S长度子列表的内积n.对于每个F,S,它计算在第一个非零内积之前为零的内积.

这是代码.

#!/usr/bin/python

from __future__ import division
import itertools
import operator
import math

n=14
m=n+1
def innerproduct(A, B):
    assert (len(A) == len(B))
    s = 0 
    for k in xrange(0,n):
        s+=A[k]*B[k]
    return s

leadingzerocounts = [0]*m
for S in itertools.product([-1,1], repeat = n):
    S1 = S + S
    for F in itertools.product([-1,1], repeat = n):
        i = 0
        while (i<m):
            ip = innerproduct(F, S1[i:i+n]) …
Run Code Online (Sandbox Code Playgroud)

python algorithm performance cython numba

18
推荐指数
2
解决办法
811
查看次数