Python 对 SQL 怎么直接取整列?
Python 对 SQL 取row时很方便,cursor一次可以返回一个tuple。但是,当我想取一整列tuple时,就很麻烦:cursor class 不能 slice,只能每个row的切,就只能遍历:
column = ()
for row in cursor:
column = column+(row[3])
各位有没有方便的方法能直接取一列的tuple?
[解决办法]
据说NumPy第三方模块可以实现,但我没有用过。
也可以试试矩阵转置,不知道在大数据量情况下效率怎么样,我自己没有测试过。
[解决办法]
def column(curr, columnid):
return [r[columnid] for r in curr]
或者采用生成器机制:
def column(curr, columnid):
return (r[columnid] for r in curr)
[解决办法]
tuple(row[3] for row in cursor)
代码频繁用到嘛,像楼上说的写成一个函数