小编Căt*_*ilă的帖子

python线程应用程序错误到许多参数

这个python源代码有什么问题?

import threading
import subprocess as sub

def ben(fil):
    pr = sub.Popen(fil,stdout=sub.PIPE,stderr=sub.PIPE)
    output, errors = pr.communicate()
    print output

theapp = '''blender
            blender-softwaregl'''.split()
print theapp

for u in theapp:
    print u
    tr = threading.Thread(target=ben, args=(u))
    tr.daemon = True
    tr.start()
Run Code Online (Sandbox Code Playgroud)

错误是:

['blender', 'blender-softwaregl']
blender
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/threading.py", line 551, in __bootstrap_inner
    self.run()
  File "/usr/local/lib/python2.7/threading.py", line 504, in run
    self.__target(*self.__args, **self.__kwargs)
TypeError: ben() takes exactly 1 argument (7 given)

blender-softwaregl
Exception in thread Thread-2:
Traceback …
Run Code Online (Sandbox Code Playgroud)

python multithreading python-2.7

5
推荐指数
1
解决办法
5878
查看次数

Windows XP,Python 2.7和Pygame

如何让pygame在Windows XP下使用Python 2.7?我想我需要编译它,但我不确定.

谢谢.

python windows-xp pygame python-2.7

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

Bash按args选择数组元素的位置

我想通过给出一个arg来创建一个返回元素数组位置的bash脚本.请参阅下面的代码,我使用

#!/bin/bash
args=("$@")
echo ${args[0]}
test_array=('AA' 'BB' 'CC' 'DD' 'EE')
echo $test_array
elem_array=${#test_array[@]}
for args in $test_array
do
        echo 
done
Run Code Online (Sandbox Code Playgroud)

最后,我应该输出如下:

$script.sh DD
4
Run Code Online (Sandbox Code Playgroud)

bash

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

GL_TEXTURE_RECTANGLE_ARB

我尝试使用GL_TEXTURE_RECTANGLE_ARB使用数据原始纹理:

void Display::tex(){

GLubyte Texture[16] =
{    
0,0,0,0, 0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF, 0,0,0,0
};
GLuint Nom;
glLoadIdentity();//load identity matrix
glTranslatef(0.0f,0.0f,-4.0f);//move forward 4 units

glEnable(GL_DEPTH_TEST);    //Active le depth test
glDisable( GL_CULL_FACE );

glEnable (GL_TEXTURE_RECTANGLE_ARB);

glPixelStorei(GL_UNPACK_ROW_LENGTH, 2);

glPixelStorei(GL_UNPACK_ALIGNMENT, 1);

glGenTextures(1, &Nom);

glBindTexture(GL_TEXTURE_RECTANGLE_ARB, Nom);

glTexParameteri(GL_TEXTURE_RECTANGLE_ARB,

                GL_TEXTURE_MIN_FILTER, GL_LINEAR);

glTexImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, GL_RGBA8, 2, 2,

                0, GL_BGRA_EXT, GL_UNSIGNED_INT_8_8_8_8_REV, Texture);
angle  = 0.01 * glutGet ( GLUT_ELAPSED_TIME );
glRotatef(angle,0,1,1);

glBegin(GL_QUADS);  //Et c'est parti pour le cube !

glTexCoord2i(0,0);glVertex3i(-1,-1,-1);
glTexCoord2i(1,0);glVertex3i(+1,-1,-1);
glTexCoord2i(1,1);glVertex3i(+1,+1,-1);
glTexCoord2i(0,1);glVertex3i(-1,+1,-1);

//1 face

glTexCoord2i(0,0);glVertex3i(-1,-1,+1);
glTexCoord2i(1,0);glVertex3i(+1,-1,+1);
glTexCoord2i(1,1);glVertex3i(+1,+1,+1);
glTexCoord2i(0,1);glVertex3i(-1,+1,+1);

//2 faces …
Run Code Online (Sandbox Code Playgroud)

opengl textures

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

python 3.3,2.7和2.6 - 基准不一致的结果.怎么解决?

我用这个python脚本:

python2.6和2.7

for i in xrange(1000000):print i
Run Code Online (Sandbox Code Playgroud)

python3.3

for i in range(1000000):print(i)
Run Code Online (Sandbox Code Playgroud)

结果:

python 2.7

real    1m15.973s
user    0m3.392s
sys 0m6.384s
Run Code Online (Sandbox Code Playgroud)

python 2.6

real    1m15.860s
user    0m3.064s
sys 0m6.296s
Run Code Online (Sandbox Code Playgroud)

使用python 3.3我多次测试脚本,我收到了这种运行差异.

python 3.3

real    1m34.235s
user    0m10.668s
sys 0m8.988s

real    1m29.431s
user    0m10.304s
sys 0m9.512s

real    1m12.528s
user    0m10.568s
sys 0m9.004s

real    1m4.193s
user    0m9.688s
sys 0m8.812s

real    1m18.332s
user    0m9.728s
sys 0m9.132s
Run Code Online (Sandbox Code Playgroud)

之后我再次尝试python 2.6,我得到了这个:

real    0m45.003s
user    0m3.056s
sys 0m5.956s
Run Code Online (Sandbox Code Playgroud)

对2个python脚本3.3和2.7(或2.6)进行基准测试的最佳方法是什么.

python

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

从列表中排序元素

我需要从列表中提取一些元素(在本例中为n)我还有另一个列表(列表)

n=['A','B','C','D','E']
o=['A','B','C','D','E','AS','sd','Z','R']
n.sort()
Run Code Online (Sandbox Code Playgroud)

现在,如果我使用此代码:

for o in sorted(n): 
Run Code Online (Sandbox Code Playgroud)

代码运行'A','B','C','D','E'.

我需要运行for代码但只运行'AS','sd','Z','R'项目.

类似于:运行o列表中的项目的代码,而不包含n列表中的项目

python

0
推荐指数
1
解决办法
87
查看次数