小编tim*_*geb的帖子

未找到宝石命令

我在Ubuntu 10.10 32位上安装了gem

apt-get install gem -y
Run Code Online (Sandbox Code Playgroud)

但是当我试着奔跑的时候

gem install something.gem
Run Code Online (Sandbox Code Playgroud)

我收到错误的命令找不到.

bash: gem: command not found
Run Code Online (Sandbox Code Playgroud)

我安装了gem,有什么理由说它找不到命令?

这些文件是由gem包安装的

http://pastie.org/3483416

ruby linux rubygems

80
推荐指数
10
解决办法
12万
查看次数

您可以从字符串创建Python列表,同时将特定关键字中的字符保持在一起吗?

我想从字符串中的字符创建一个列表,但保持特定的关键字在一起.

例如:

关键词:汽车,公交车

INPUT:

"xyzcarbusabccar"
Run Code Online (Sandbox Code Playgroud)

OUTPUT:

["x", "y", "z", "car", "bus", "a", "b", "c", "car"]
Run Code Online (Sandbox Code Playgroud)

python python-2.7

32
推荐指数
2
解决办法
1099
查看次数

了解numpy的dstack功能

我很难理解numpy的dstack功能实际上在做什么.文档相当稀疏,只是说:

按顺序深度(沿第三轴)堆叠阵列.

采用一系列数组并沿第三轴堆叠它们以形成单个数组.重建数组除以dsplit.这是将2D阵列(图像)堆叠到单个3D阵列中进行处理的简单方法.

所以要么我真的很愚蠢,这个含义是显而易见的,或者我似乎对"堆叠","按顺序","深度明智"或"沿轴"这两个术语有一些误解.但是,我的印象是我在上下文中理解这些术语,vstack并且hstack很好.

我们来看这个例子:

In [193]: a
Out[193]: 
array([[0, 3],
       [1, 4],
       [2, 5]])
In [194]: b
Out[194]: 
array([[ 6,  9],
       [ 7, 10],
       [ 8, 11]])
In [195]: dstack([a,b])
Out[195]: 
array([[[ 0,  6],
        [ 3,  9]],

       [[ 1,  7],
        [ 4, 10]],

       [[ 2,  8],
        [ 5, 11]]])
Run Code Online (Sandbox Code Playgroud)

首先,ab没有第三轴,所以我将如何堆叠起来一起" 第三轴"以开始?第二,假设a并且b是2D图像的表示,为什么我在结果中最终得到三个 2D数组而不是两个"顺序"的2D数组?

python numpy concatenation multidimensional-array

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

python中的多个赋值

我在这里需要一个明确的解释.为什么以下代码有效?

foo1 = foo1[0] = [0]
Run Code Online (Sandbox Code Playgroud)

好的,我知道作业是从左到右完成的.

python如何理解foo1列表?

顺便说一句,我知道它foo1最终是[[...]]它的第一个元素.

python

26
推荐指数
1
解决办法
1604
查看次数

Python函数,用于标识列表或数组中的数字是否更接近0或1

我有numpy一系列数字.以下是一个例子:

[[-2.10044520e-04  1.72314372e-04  1.77235336e-04 -1.06613465e-04
6.76617611e-07  2.71623057e-03 -3.32789944e-05  1.44899758e-05
5.79249863e-05  4.06502549e-04 -1.35823707e-05 -4.13955189e-04
5.29862793e-05 -1.98286005e-04 -2.22829175e-04 -8.88758230e-04
5.62228710e-05  1.36249752e-05 -2.00474996e-05 -2.10090068e-05
1.00007518e+00  1.00007569e+00 -4.44597417e-05 -2.93724453e-04
1.00007513e+00  1.00007496e+00  1.00007532e+00 -1.22357142e-03
3.27903892e-06  1.00007592e+00  1.00007468e+00  1.00007558e+00
2.09869172e-05 -1.97610235e-05  1.00007529e+00  1.00007530e+00
1.00007503e+00 -2.68725642e-05 -3.00372853e-03  1.00007386e+00
1.00007443e+00  1.00007388e+00  5.86993822e-05 -8.69989983e-06
1.00007590e+00  1.00007488e+00  1.00007515e+00  8.81850779e-04
2.03875532e-05  1.00007480e+00  1.00007425e+00  1.00007517e+00
-2.44678912e-05 -4.36556267e-08  1.00007436e+00  1.00007558e+00
1.00007571e+00 -5.42990711e-04  1.45517859e-04  1.00007522e+00
1.00007469e+00  1.00007575e+00 -2.52271817e-05 -7.46339417e-05
1.00007427e+00]]
Run Code Online (Sandbox Code Playgroud)

我想知道每个数字是否接近0或1.是否有Python中的函数可以执行此操作或者我是否必须手动执行此操作?

python arrays numpy function list

17
推荐指数
4
解决办法
2505
查看次数

Python按多个标准排序

我有一个列表,其中每个元素都是表单[list of integers, integer].例如,列表的元素可能如下所示[[1,3,1,2], -1].

我想按以下标准对包含所述元素类型的列表进行排序:

  1. 如果两个元素(即element[0])的整数列表具有不同的长度,则具有较小整数列表的元素是较小的元素.

  2. 否则,如果整数列表具有相同的长度,则较小的元素是具有较小整数的元素,第一个整数在两个元素的整数列表中不同.例如:

    [[1,1,99,100], - 1] <[[1,1,100,1], - 1],因为99 <100.

  3. 否则,如果整数列表相同,则较小的元素是具有较小整数的元素element[1].

我如何编写一个可以传递给sorted()或sort()的approriate键函数?

python sorting

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

Python:不以#开头的行

我有一个包含类似内容的文件

#comment
#comment
不是评论

#comment
#comment
不是评论

我试图逐行读取文件,只捕获不以#开头的行.我的代码/正则表达式出了什么问题?

import re

def read_file():
    pattern = re.compile("^(?<!# ).*")

    with open('list') as f:
        for line in f:
            print pattern.findall(line)
Run Code Online (Sandbox Code Playgroud)

原始代码捕获所有内容而不是预期.

python regex

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

Pandas dataframe:删除次要的即将到来的相同值

我有一个数据帧:

col1  col2
 a     0
 b     1
 c     1
 d     0
 c     1
 d     0
Run Code Online (Sandbox Code Playgroud)

'col2'我想要只保留1顶部1的第一个并用a 替换第一个下面的每一个0,这样输出是:

col1  col2
 a     0
 b     1
 c     0
 d     0
 c     0
 d     0
Run Code Online (Sandbox Code Playgroud)

非常感谢你.

python dataframe pandas

11
推荐指数
1
解决办法
184
查看次数

如何在python中通过套接字发送数组

我有一个这样的阵列([1,2,3,4,5,6],[1,2,3,4,5,6]).我必须通过python中的STREAM/TCP套接字发送它.然后我必须在接收端收到相同的数组.

python sockets arrays

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

OpenCV:VideoCapture的阅读框将视频推向奇怪的错误位置

(一旦符合条件,我将在这个问题上立即获得500点声望奖励 - 除非问题已经结束.)

一句话的问题

VideoCapture视频中读取帧比预期更远.

说明

我需要cv2在特定时间间隔内从100 fps(根据和VLC媒体播放器)视频中读取和分析帧.在下面的最小示例中,我试图读取三分钟视频的前十秒的所有帧.

我正在创建一个cv2.VideoCapture对象,我从中读取帧,直到达到所需的位置(以毫秒为单位).在我的实际代码中,每个框架都进行了分析,但这一事实与展示错误无关.

检查VideoCapture读取帧后的当前帧和毫秒位置会产生正确的值,因此VideoCapture 认为它位于正确的位置 - 但事实并非如此.保存最后一个读取帧的图像显示我的迭代超过目标时间超过两分钟.

更奇怪的是,如果我手动将捕捉的毫秒位置设置VideoCapture.set为10秒(VideoCapture.get读取帧后返回相同的值)并保存图像,则视频处于(几乎)正确的位置!

演示视频文件

如果您想运行MCVE,则需要demo.avi视频文件.您可以下载它这里.

MCVE

这款MCVE经过精心设计和评论.如果有任何不清楚的地方,请在问题下留言.

如果你正在使用的OpenCV 3必须更换的所有实例cv2.cv.CV_cv2..(对我来说,这两个版本都会出现问题.)

import cv2

# set up capture and print properties
print 'cv2 version = {}'.format(cv2.__version__)
cap = cv2.VideoCapture('demo.avi')
fps = cap.get(cv2.cv.CV_CAP_PROP_FPS)
pos_msec = cap.get(cv2.cv.CV_CAP_PROP_POS_MSEC)
pos_frames = cap.get(cv2.cv.CV_CAP_PROP_POS_FRAMES)
print ('initial attributes: fps = {}, pos_msec = {}, pos_frames = {}' …
Run Code Online (Sandbox Code Playgroud)

python video ubuntu opencv video-processing

9
推荐指数
1
解决办法
6425
查看次数