小编mik*_*kip的帖子

在这个bash命令1>&2中,&符号表示什么

快速的,2>&1将stderr重定向到stdout,但是&符号是什么意思?我知道如果我们将2 > 1它输出到一个名为的文件1,那么&符号会做什么?

bash scripting

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

如何在具有多个条件的循环中执行

我在python中有一个while循环

condition1=False
condition1=False
val = -1

while condition1==False and condition2==False and val==-1:
    val,something1,something2 = getstuff()

    if something1==10:
        condition1 = True

    if something2==20:
        condition2 = True

'
'
Run Code Online (Sandbox Code Playgroud)

当所有这些条件都成立时,我想要摆脱循环,上面的代码不起作用

我原本有

while True:
      if condition1==True and condition2==True and val!=-1:
         break
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,这是最好的方法吗?

谢谢

python logic

18
推荐指数
1
解决办法
15万
查看次数

使用python和numpy的2d卷积

我试图使用numpy在python中执行2d卷积

我有一个2d数组,如下所示,行内核为H_r,列为H_c

data = np.zeros((nr, nc), dtype=np.float32)

#fill array with some data here then convolve

for r in range(nr):
    data[r,:] = np.convolve(data[r,:], H_r, 'same')

for c in range(nc):
    data[:,c] = np.convolve(data[:,c], H_c, 'same')

data = data.astype(np.uint8);
Run Code Online (Sandbox Code Playgroud)

它不会产生我期望的输出,这段代码看起来不错,我认为问题在于从float32到8bit的转换.什么是最好的方法来做到这一点

谢谢

python numpy convolution

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

Python - 将二维数组中的列设置为特定值的最佳方法

我有一个2d数组,我想设置一个特定值的列,我的代码如下.这是python的最佳方式吗?

rows = 5
cols = 10

data = (rows * cols) *[0]
val = 10
set_col = 5

for row in range(rows):
    data[row * cols + set_col - 1] = val
Run Code Online (Sandbox Code Playgroud)

如果我想将一些列设置为特定值,我该如何扩展它

我想只使用python标准库

谢谢

python multidimensional-array

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

Python 类属性 - 重置

在 Python 中重置类属性的最佳方法是什么?

我有一个类,它有大约 20 个类属性,在我的 init 中我有

class MyClass:
    def __init__(self)
       self.time=0
       self.pos=0
       self.vel=0
       self.acc=0
       self.rot=0
       self.dyn=0
Run Code Online (Sandbox Code Playgroud)

这些需要在我的程序的每次迭代中重置,最简洁的方法是什么而不是如上所示设置为零

谢谢

python attributes class

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

将打包数据解码为结构

将python字符串解压缩到字段中的最佳方法是什么?

我有从tcp套接字收到的数据,它打包如下,我相信它将在socket recv函数的字符串中

它具有以下格式

uint8 - header
uint8 - length
uint32 - typeID
uint16 -param1
uint16 -param2
uint16 -param3
uint16 -param4
char [24] - name string
uint32 - checksum
uint8 - footer

(我还需要解压缩上面不同格式的其他数据包)

我该如何打开这些包装?

我是python的新手,已经做了一点'C'.如果我使用'C'我可能会使用一个结构,这会是Python的方式吗?

问候

X

python string unpack

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

在python元组中添加一个条目

我有一个代表x,y点的元组列表.我还列出了每个点的值列表.如何将它们组合成列表列表(即每个点[x,y,val]的一个条目)或元组列表?

谢谢

python tuples list

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

Python将一个短整数插入到字节列表中

我有一个字节列表如下

pkt_bytes = [ 0x02,0x07, 0xff,0xff ,0x00,0x03]
Run Code Online (Sandbox Code Playgroud)

0xff,0xff我想要放置16位短整数的位置

我该怎么做

问候

python list

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

帮助Python字符串

我有一个程序从文本文件中读取命令

例如,命令语法如下,是一个字符串

'index command param1 param2 param3'

参数个数从0到3变量索引是一个整数命令,是一个字符串,所有参数都是整数

我想拆分它们,以便我有一个如下列表

[index,'command',params[]]

做这个的最好方式是什么?

谢谢

python string

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

使用python解码tcp包

我正在尝试解码通过tcp连接接收的数据.数据包很小,不超过100个字节.然而,当它们中有很多时我会收到一些连接在一起的数据包.有没有办法防止这种情况发生.我正在使用python

我试图分开数据包,我的来源如下.数据包以STX字节开头,以ETX字节结束,STX后面的字节是数据包长度(数据包长度小于5无效)校验和是ETX之前的最后一个字节

def decode(data):
  while True:
    start = data.find(STX)
    if start == -1: #no stx in message
        pkt = ''
        data = ''
        break
    #stx found , next byte is the length
    pktlen = ord(data[1])
    #check message ends in ETX (pktken -1) or checksum invalid
    if pktlen < 5 or data[pktlen-1] != ETX or checksum_valid(data[start:pktlen]) == False:
        print "Invalid Pkt"
        data = data[start+1:]
        continue
    else:
        pkt = data[start:pktlen]
        data = data[pktlen:]
        break

return data , pkt
Run Code Online (Sandbox Code Playgroud)

我这样用它

#process reports
try: …
Run Code Online (Sandbox Code Playgroud)

python string tcp packets decoding

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

使用python在列表中查找唯一的最大值

我有一个点列表,如下所示

points=[ [x0,y0,v0],  [x1,y1,v1],  [x2,y2,v2].......... [xn,yn,vn]]
Run Code Online (Sandbox Code Playgroud)

一些点具有重复的x,y值.我想要做的是提取唯一的最大值x,y点

例如,如果我有积分 [1,2,5] [1,1,3] [1,2,7] [1,7,3]

我想获得这份清单 [1,1,3] [1,2,7] [1,7,3]

我怎么能在python中这样做?

谢谢

python unique set

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

Python字符串拆分

如果我有一个字符串'x=10',如何使用一行代码将10提取为整数?

python string split

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

Python类方法

我有一个课程如下:

class X:
    def __init__(self):
          self.sum_x =0.0
          self.sum_x_squared=0.0
          self.var_x =0.0
          self.sum_y =0.0
          self.sum_y_squared=0.0
          self.var_y =0.0

    def update(self,data):
         [x,y,vx,vy]=data
         self.update_sums(self.sum_x,self.sum_x_squared,x)
         self.update_sums(self.sum_y,self.sum_y_squared,y)
         .


    def update_sums(self,sums,squares,val):
          sums += val
          squares += val*val
          .
Run Code Online (Sandbox Code Playgroud)

我想通过成员变量sum_x,sum_x_squared等等的update_sums功能更新我怎么做到这一点,我很困惑.

谢谢

python oop

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