小编Nat*_*man的帖子

如何并行迭代两个列表?

我在Python中有两个迭代,我想成对地遍历它们:

foo = (1, 2, 3)
bar = (4, 5, 6)

for (f, b) in some_iterator(foo, bar):
    print "f: ", f, "; b: ", b
Run Code Online (Sandbox Code Playgroud)

它应该导致:

f: 1; b: 4
f: 2; b: 5
f: 3; b: 6
Run Code Online (Sandbox Code Playgroud)

一种方法是迭代索引:

for i in xrange(len(foo)):
    print "f: ", foo[i], "; b: ", b[i]
Run Code Online (Sandbox Code Playgroud)

但这对我来说似乎有点不合时宜.有没有更好的方法呢?

python iterator for-loop list

767
推荐指数
6
解决办法
58万
查看次数

我如何强制划分为浮点?分部继续向下舍入到0?

我有两个整数值ab,但我需要他们的浮点比例.我知道a < b并且我想要计算a / b,所以如果我使用整数除法,我将总是得到0,余数为a.

我如何c在Python中强制成为Python中的浮点数?

c = a / b
Run Code Online (Sandbox Code Playgroud)

python floating-point integer division python-2.x

703
推荐指数
9
解决办法
63万
查看次数

如何用NumPy计算欧氏距离?

我在3D中有两点:

(xa, ya, za)
(xb, yb, zb)
Run Code Online (Sandbox Code Playgroud)

我想计算距离:

dist = sqrt((xa-xb)^2 + (ya-yb)^2 + (za-zb)^2)
Run Code Online (Sandbox Code Playgroud)

使用NumPy或Python的最佳方法是什么?我有:

a = numpy.array((xa ,ya, za))
b = numpy.array((xb, yb, zb))
Run Code Online (Sandbox Code Playgroud)

python numpy euclidean-distance

466
推荐指数
15
解决办法
65万
查看次数

我怎样才能在Python中明确释放内存?

我写了一个Python程序,它作用于一个大的输入文件,创建了几百万个表示三角形的对象.算法是:

  1. 读取输入文件
  2. 处理文件并创建由顶点表示的三角形列表
  3. 以OFF格式输出顶点:顶点列表,后跟三角形列表.三角形由顶点列表中的索引表示

在打印三角形之前打印出完整的顶点列表的OFF的要求意味着在将输出写入文件之前我必须在内存中保存三角形列表.与此同时,由于列表的大小,我遇到了内存错误.

告诉Python我不再需要某些数据的最佳方法是什么,它可以被释放?

python memory memory-management

338
推荐指数
9
解决办法
42万
查看次数

Linux中是否有任何标准的退出状态代码?

如果进程的退出状态为0,则认为该进程已在Linux中正确完成.

我已经看到分段错误经常导致退出状态为11,但我不知道这是否只是我工作的惯例(那些失败的应用程序都是内部的)或标准.

Linux中的进程是否有标准退出代码?

linux error-handling exit-code

300
推荐指数
8
解决办法
28万
查看次数

是否可以在MATLAB中为每个文件定义多个函数,并从该文件外部访问它们?

当我在EE攻读本科学位时,MATLAB要求每个函数都在自己的文件中定义,即使它是一个单行程序.

我现在正在攻读研究生学位,我必须在MATLAB中编写一个项目.这仍然是新版MATLAB的要求吗?

如果可以在文件中放置多个函数,是否有任何限制?例如,文件中的所有函数都可以从文件外部访问,还是只能从与文件同名的函数中访问?

注意:我使用的是MATLAB版本R2007b.

matlab scope file function function-declaration

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

如何在Linux上生成分段错误的核心转储?

我在Linux中有一个进程出现分段错误的进程.如何在失败时告诉它生成核心转储?

unix linux bash coredump tcsh

208
推荐指数
12
解决办法
34万
查看次数

我和Perl之间的区别是什么?

我知道myPerl中有什么.它定义了一个仅存在于定义它的块范围内的变量.怎么our办?有our什么不同my

perl scope

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

是否可以在Python中转发声明一个函数?

是否可以在Python中转发声明一个函数?我想cmp在声明之前使用我自己的函数对列表进行排序.

print "\n".join([str(bla) for bla in sorted(mylist, cmp = cmp_configs)])
Run Code Online (Sandbox Code Playgroud)

我已经组织了我的代码来cmp_configs在调用之后放置方法的定义.它失败并出现此错误:

NameError: name 'cmp_configs' is not defined
Run Code Online (Sandbox Code Playgroud)

cmp_configs在使用之前有没有办法"声明" 方法?这会让我的代码看起来更干净吗?

我假设有些人会试图告诉我,我应该重新组织我的代码,以便我没有这个问题.但是,有些情况下这可能是不可避免的,例如在实现某种形式的递归时.如果您不喜欢这个例子,假设我有一个案例,其中确实需要转发声明一个函数.

考虑这种情况,在Python中需要向前声明一个函数:

def spam():
    if end_condition():
        return end_result()
    else:
        return eggs()

def eggs():
    if end_condition():
        return end_result()
    else:
        return spam()
Run Code Online (Sandbox Code Playgroud)

end_conditionend_result先前已经被定义.

是重新组织代码并始终在调用之前放置定义的唯一解决方案吗?

python forward-declaration

165
推荐指数
10
解决办法
15万
查看次数

在linux中更改VNC会话的分辨率

我使用VNC连接到工作中的Linux工作站.在工作中,我有一台20英寸显示器,运行速度为1600x1200,而在家里,我使用的笔记本电脑的分辨率为1440x900.如果我将vncserver设置为运行在1440x900,我错过了显示器上的大量空间,而如果我将它设置为1600x1200运行它不适合笔记本电脑的屏幕,我必须一直滚动它.

有没有什么好方法可以动态调整VNC会话的大小?

我的VNC服务器是在SuSE64上运行的RealVNC E4.x(我不记得确切的版本).

linux vnc

146
推荐指数
9
解决办法
45万
查看次数